home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 22 / Cream of the Crop 22.iso / bbs / fnewsd45.zip / FIDO1345.NWS
Text File  |  1996-11-04  |  165KB  |  3,488 lines

  1.      F I D O N E W S --       Volume 13, Number 45          4 November 1996
  2.      +----------------------------+-----------------------------------------+
  3.      |  The newsletter of the     |   ISSN 1198-4589 Published by:          |
  4.      |    FidoNet community       |   "FidoNews"                            |
  5.      |          _                 |        1-904-409-7040    [1:1/23]       |
  6.      |         /  \               |                                         |
  7.      |        /|oo \              |                                         |
  8.      |       (_|  /_)             |                                         |
  9.      |        _`@/_ \    _        |                                         |
  10.      |       |     | \   \\       |   Editor:                               |
  11.      |       | (*) |  \   ))      |        Christopher Baker  1:18/14       |
  12.      |       |__U__| /  \//       |                                         |
  13.      |        _//|| _\   /        |                                         |
  14.      |       (_/(_|(____/         |                                         |
  15.      |             (jm)           |     Newspapers should have no friends.  |
  16.      |                            |                    -- JOSEPH PULITZER   |
  17.      +----------------------------+-----------------------------------------+
  18.      |               Submission address: FidoNews Editor 1:1/23             |
  19.      +----------------------------------------------------------------------+
  20.      |  MORE addresses:                                                     |
  21.      |                                                                      |
  22.      |    submissions=> cbaker84@digital.net                                |
  23.      +----------------------------------------------------------------------+
  24.      |    For  information,   copyrights,   article   submissions,          |
  25.      |    obtaining copies of FidoNews or the internet gateway FAQ          |
  26.      |    please refer to the end of this file.                             |
  27.      +----------------------------------------------------------------------+
  28.  
  29.  
  30.             HEADLINE CONTEST! SEND YOUR ENTRIES NOW!
  31.  
  32.  
  33.                         Table of Contents
  34.      1. EDITORIAL  ................................................  1
  35.         A long Issue but a good start  ............................  1
  36.      2. ARTICLES  .................................................  2
  37.         A Short *.MSG Programming Tutorial [III]  .................  2
  38.         Read Read Read  ...........................................  8
  39.         The FTSC Charter?  ........................................ 11
  40.         FTSC Comments  ............................................ 13
  41.         Trias Politica and FidoNet  ............................... 14
  42.         Are we talking about the same net?  ....................... 16
  43.      3. COLUMNS  .................................................. 18
  44.         Fidonet in Europe  ........................................ 18
  45.      4. GETTING TECHNICAL  ........................................ 19
  46.         FTS/FSC Master List  ...................................... 19
  47.         FTS-0001 - The Basic FidoNet Standard for Operation  ...... 21
  48.      5. COORDINATORS CORNER  ...................................... 48
  49.         Nodelist-statistics as seen from Zone-2 for day 306  ...... 48
  50.      6. NET HUMOR  ................................................ 49
  51.         Who are Computer people?  ................................. 49
  52.      7. NOTICES  .................................................. 51
  53.         Future History  ........................................... 51
  54.      8. FIDONET SOFTWARE LISTING  ................................. 52
  55.         Latest Greatest Software Versions  ........................ 52
  56.      9. FIDONEWS PUBLIC-KEY  ...................................... 59
  57.         This Space intentionally left blank?  ..................... 59
  58.      And more!
  59.      FIDONEWS 13-45               Page 1                    4 Nov 1996
  60.  
  61.  
  62.      =================================================================
  63.                                  EDITORIAL
  64.      =================================================================
  65.  
  66.  
  67.      This Issue is long as I begin to publish the FTSC files on a weekly
  68.      basis. The first one is FTS-0001 which specifies all the basic
  69.      parameters for a FidoNet mail and file exchange session along with the
  70.      message packet structure.
  71.  
  72.      In converting the original 80 column document to MAKENEWS' 70 column
  73.      limit, the large tables became scrambled. They can be unscrambled if
  74.      you send that section to an 80 column file or simpler yet, freq the
  75.      original from here or from the source.
  76.  
  77.      Also included in this first effort is a complete list of all the FTS
  78.      and FSC docs extant to my knowledge. All of the ones not marked
  79.      *Obsolete* are available from the sources listed in the Masthead for
  80.      FidoNews as well as here or from the FTSC Chairman's system at
  81.      3:632/348 in Australia.
  82.  
  83.      Please consider FTS-0001 as this week's FidoNet History entry, too.
  84.  
  85.      A complete archive containing every doc listed further down is
  86.      available here by the magicname of: FTSC or FTSC-ALL. Individual files
  87.      are available here as listed. At the source [in Zone 3], the files may
  88.      have alphanumeric designations so you might want to use an * for the
  89.      file extensions if freqing from 'down under'.
  90.  
  91.      C.B.
  92.  
  93.      -----------------------------------------------------------------
  94.  
  95.      FIDONEWS 13-45               Page 2                    4 Nov 1996
  96.  
  97.  
  98.      =================================================================
  99.                                  ARTICLES
  100.      =================================================================
  101.  
  102.  
  103.      A Short *.MSG Programming Tutorial [III]
  104.      Damian Walker, 2:2502/666
  105.  
  106.      In this last article of the *.MSG programming series I'll introduce
  107.      some important issues about writing message files, and I'll also
  108.      include the full source code for the message list program discussed in
  109.      the previous two articles.
  110.  
  111.      Writing *.MSG Files
  112.  
  113.      Somewhere in FTS-1 it is mentioned that life is not a one-way street.
  114.      Perhaps this is an odd observation to be found in a technical
  115.      specification document, but it did provide me with a timely reminder
  116.      that this tutorial should include something on writing messages as
  117.      well as reading them.
  118.          Most of the processes involved in writing a message should be
  119.      reasonably obvious, being the opposite of reading.  Instead of reading
  120.      a message and extracting addressing information and text, you build up
  121.      the header and the text before writing to a file.  There are some
  122.      extra considerations to be taken into account, however.
  123.          The first is that of message numbering-- there must be some way to
  124.      find out what number a new message should bear.  This is not an issue
  125.      when rewriting an old message (to change its attributes, for
  126.      instance), but it is essential that new messages should not overwrite
  127.      existing ones, and it can be reasonably important in certain
  128.      applications that the message is numerically the highest.  The
  129.      following simple section of code can find out the next available
  130.      message number:
  131.  
  132.          long findnextavail(char *filename, char *directory)
  133.          {
  134.              long nextavail,
  135.                   current;
  136.              struct ffblk f;
  137.              int done;
  138.              char wildcard[128];
  139.  
  140.              nextavail = 1;
  141.              sprintf(wildcard, "%s*.msg", directory);
  142.              done = findfirst(wildcard, &f, FA_ARCH);
  143.              while(!done)
  144.              {
  145.                  current = atol(f.ff_name);
  146.                  if(current >= nextavail)
  147.                      nextavail = current + 1;
  148.                  done = findnext(&f);
  149.              }
  150.  
  151.              sprintf(filename, "%s%ld.MSG", directory, nextavail);
  152.              return nextavail;
  153.          }
  154.      FIDONEWS 13-45               Page 3                    4 Nov 1996
  155.  
  156.  
  157.      When the while loop is finished, 'nextavail' will contain the next
  158.      available message number, which be returned to the calling process.
  159.      I've also chosen to return the message number as a full *.MSG path and
  160.      filename since this is more consistent with the examples used so far;
  161.      a more elegant function would do one or the other.
  162.          It is not always advisable to include this code in a generic write
  163.      routine, since such a routine may also be needed to rewrite existing
  164.      messages.  This is why I've included it in a separate function
  165.      findnextavail(), which will return the information to a calling
  166.      process which can then go on to pass the message number to the generic
  167.      write routine.
  168.          Values must be placed in the message header fields, and kludges
  169.      must be prepared for extended addressing information, before the
  170.      message is actually written out.  This information is more often than
  171.      not prepared before the next available message number is sought.
  172.          Not all fields need to be filled with meaningful data; some should
  173.      preferably be used properly but are a little too advanced for this
  174.      tutorial.  For example:
  175.  
  176.          timesread       int/2       Times read
  177.  
  178.      Can often be zeroed.  Also,
  179.  
  180.          cost            int/2       Cost word
  181.  
  182.      could be zeroed unless you wish to include message accounting in your
  183.      program.  And then consider:
  184.  
  185.          destzone        int/2       Recipient's zone number
  186.          origzone        int/2       Sender's zone number
  187.          destpoint       int/2       Recipient's point number
  188.          origpoint       int/2       Sender's point number
  189.  
  190.      Since these fields are not reliable, they are not actually used by
  191.      software when reading messages.  Personally I fill them anyway, as a
  192.      generic message write routine can take values placed in here to form
  193.      the kludges which are actually used for the purpose of 4D addressing.
  194.  
  195.          replyto         int/2       Reply linking information
  196.  
  197.      This field can often be zeroed or ignored, as can:
  198.  
  199.          nextreply       int/2       Next reply to this message
  200.  
  201.      since they appear to be useful only in echomail, and most people store
  202.      echomail in more advanced message bases than a *.MSG directory.
  203.          All the other fields are mandatory, and the way they are filled
  204.      really is application dependent, just as the way they are used after
  205.      reading is also application dependent.  The difference is that few of
  206.      the fields can be ignored when writing; you have to at least zero most
  207.      of the fields mentioned above so that their contents are not mistaken
  208.      for real values.
  209.          As a simple example, let's imagine that I want to create an
  210.      automatic robot message such as the following:
  211.  
  212.          ================================================================
  213.      FIDONEWS 13-45               Page 4                    4 Nov 1996
  214.  
  215.  
  216.          By: Automatic Robot, 2:2502/666.3
  217.          To: Damian Walker, 2:2502/666.0
  218.          Re: Netmail reminder
  219.          St: Pvt Local
  220.          ----------------------------------------------------------------
  221.          This is your netmail reminder
  222.          ================================================================
  223.  
  224.      This message could be typical of one generated by a netmail reminder
  225.      program or appointments calendar, an idea I had for my newly found
  226.      netmail programming skills, which I never took up.  Rather than use
  227.      such a program as context for C code, I'll cheat and generate the
  228.      message directly in the following program excerpt:
  229.  
  230.          #include <stdio.h>
  231.          #include <time.h>
  232.          #include "fidomsg.h"
  233.  
  234.          #define MAXMSGSIZE 2048
  235.  
  236.          void main(void)
  237.          {
  238.              struct fts1 msg;
  239.              char text[MAXMSGSIZE];
  240.  
  241.              strcpy(msg.fromusername, "Automatic Robot");
  242.              msg.origzone = 2;
  243.              msg.orignet = 2502;
  244.              msg.orignode = 666;
  245.              msg.origpoint = 3;
  246.              strcpy(msg.tousername, "Damian Walker");
  247.              msg.destzone = 2;
  248.              msg.destnet = 2502;
  249.              msg.destnode = 666;
  250.              msg.destpoint = 0;
  251.              strcpy(msg.subject, "Netmail reminder");
  252.              msg.attribute = MSGPVT | MSGLOCAL;
  253.              strcpy(text, "This is your netmail reminder\r");
  254.              msg.timesread = 0;
  255.              msg.cost = 0;
  256.              msg.replyto = 0;
  257.              msg.nextreply = 0;
  258.  
  259.              /* post message */
  260.          }
  261.  
  262.      In this example I have filled in the zone and point fields, in order
  263.      that the generic post routine can pick these up and use them to
  264.      generate the INTL, FMPT and TOPT kludges.  Notice also the fact that
  265.      I've zeroed four of the fields I'm not really interested in.  I've
  266.      left the date/timestamp generating code for the generic write
  267.      function, although you can see that I've included the <time.h> header
  268.      in readiness.  So let's see what such a generic write function would
  269.      look like:
  270.  
  271.          int writemsg(struct fts1 *msg, char *text, char *filename)
  272.      FIDONEWS 13-45               Page 5                    4 Nov 1996
  273.  
  274.  
  275.          {
  276.              FILE *msgfile;  /* message file handle info */
  277.              int successful = 0;
  278.              time_t timer;
  279.  
  280.              msgfile = fopen(filename, "wb");
  281.              if(msgfile != NULL)
  282.              {
  283.                  time(&timer);
  284.                  strftime(msg.datetime, 20, "%d %b %y  %H:%M:%S",
  285.                      localtime(&timer));
  286.                  fwrite(msg, sizeof(struct fts1), 1, msgfile);
  287.                  if(msg.origzone != msg.destzone)
  288.                      fprintf(msgfile, "\01INTL %d:%d/%d %d:%d/%d\r",
  289.                          msg.destzone, msg.destnet, msg.destnode,
  290.                          msg.origzone, msg.orignet, msg.orignode);
  291.                  if(msg.origpoint != 0)
  292.                      fprintf(msgfile, "\01FMPT %d\r", msg.origpoint);
  293.                  if(msg.destpoint != 0)
  294.                      fprintf(msgfile, "\01TOPT %d\r", msg.destpoint);
  295.                  fprintf("%s\0", text);
  296.                  fclose(msgfile);
  297.                  successful = 1;
  298.              }
  299.  
  300.              return successful;
  301.          }
  302.  
  303.      Notice the order of operation.  First the message file is opened.  If
  304.      the open is successful, the timestamp is generated in standard Fidonet
  305.      date/time format as described earlier, before the header file is
  306.      written.  Then the INTL kludge is written if the origin and
  307.      destination zones differ.  Then the FMPT and TOPT are written as
  308.      required.  Finally, the rest of the message text is added before the
  309.      file is closed.
  310.          This code does not include the MSGID kludge which netmail messages
  311.      so often have now.  The MSGID kludge is in the form:
  312.  
  313.          ^AMSGID: zone:net/node.point xxxxxxxx
  314.  
  315.      where the xxxxxxxx is a 32-bit number.  Generation of this number is
  316.      left to the implementation, but it must be as unique as possible.
  317.      Some programs generate a completely random MSGID, but this runs the
  318.      risk of identical MSGID's on two messages.
  319.          When restricting your programming to netmail this isn't too much
  320.      of a problem, since MSGID's are primarily intended for dupe checking
  321.      and there is no dupe checking in netmail.  However, you may wish to
  322.      experiment with more advanced algorithms for ensuring unique message
  323.      identifiers, perhaps including the timestamp as a factor in the
  324.      calculation.
  325.  
  326.      Final Message Lister
  327.  
  328.      The code in this tutorial has been pieced together, but never shown in
  329.      its final form.  For convenience, I've included the full final message
  330.      lister below.  I've taken the liberty of adding a few more comments to
  331.      FIDONEWS 13-45               Page 6                    4 Nov 1996
  332.  
  333.  
  334.      this listing, in order to make the complete program more easy to
  335.      follow.
  336.  
  337.      ======================================================================
  338.      FIDOMSG.H
  339.      ----------------------------------------------------------------------
  340.          /* FTS-1 message structure */
  341.          struct fts1 {
  342.              char    fromusername[36],
  343.                      tousername[36],
  344.                      subject[72],
  345.                      datetime[20];
  346.              int     timesread,
  347.                      destnode,
  348.                      orignode,
  349.                      cost,
  350.                      orignet,
  351.                      destnet,
  352.                      destzone,
  353.                      origzone,
  354.                      destpoint,
  355.                      origpoint,
  356.                      replyto,
  357.                      attribute,
  358.                      nextreply;
  359.          };
  360.  
  361.          #define MSGPVT      0x0001    /* Private */
  362.          #define MSGCRASH    0x0002    /* Crash message */
  363.          #define MSGRECD     0x0004    /* Message received */
  364.          #define MSGSENT     0x0008    /* Message sent */
  365.          #define MSGFILE     0x0010    /* File attached */
  366.          #define MSGTRANSIT  0x0020    /* In transit */
  367.          #define MSGORPHAN   0x0040    /* Orphan */
  368.          #define MSGKILL     0x0080    /* Kill/sent */
  369.          #define MSGLOCAL    0x0100    /* Local */
  370.          #define MSGHOLD     0x0200    /* Hold for pickup */
  371.          #define MSGFREQ     0x0800    /* File request */
  372.          #define MSGRRR      0x1000    /* Return receipt request */
  373.          #define MSGIRR      0x2000    /* Is return receipt */
  374.          #define MSGAUDIT    0x4000    /* Audit request */
  375.          #define MSGUPDATE   0x8000    /* File update request */
  376.      ======================================================================
  377.      MSGLIST.C
  378.      ----------------------------------------------------------------------
  379.          #include <stdio.h>
  380.          #include <dir.h>
  381.          #include <string.h>
  382.          #include <stdlib.h>
  383.          #include "fidomsg.h"
  384.  
  385.          #define MAXMSGSIZE 2048
  386.          #define MYZONE 2
  387.  
  388.          int readmsg(struct fts1 *msg, char *text, int limit,
  389.              char *filename)
  390.      FIDONEWS 13-45               Page 7                    4 Nov 1996
  391.  
  392.  
  393.          {
  394.              FILE *msgfile;  /* message file handle info */
  395.              int successful = 0;
  396.              char *kludgefind;
  397.              int textlen;
  398.  
  399.              /* read and process message */
  400.              msgfile = fopen(filename, "rb");
  401.              if(msgfile != NULL)
  402.              {
  403.                  /* read header and text */
  404.                  fread(msg, sizeof(struct fts1), 1, msgfile);
  405.                  textlen = fread(text, 1, limit, msgfile);
  406.                  if(textlen < limit)
  407.                      text[textlen] = '\0';
  408.                  else
  409.                      text[limit - 1] = '\0';
  410.                  fclose(msgfile);
  411.                  successful = 1;
  412.  
  413.                  /* identify zone information */
  414.                  kludgefind = strstr(text, "\01INTL");
  415.                  if(kludgefind == NULL)
  416.                  {
  417.                      msg->origzone = MYZONE;
  418.                      msg->destzone = MYZONE;
  419.                  }
  420.                  else
  421.                  {
  422.                      kludgefind = strchr(kludgefind, ' ');
  423.                      msg->destzone = atoi(kludgefind);
  424.                      kludgefind = strchr(&kludgefind[1], ' ');
  425.                      msg->origzone = atoi(kludgefind);
  426.                  }
  427.  
  428.                  /* identify point information */
  429.                  kludgefind = strstr(text, "\01FMPT");
  430.                  if(kludgefind == NULL)
  431.                      msg->origpoint = 0;
  432.                  else
  433.                      msg->origpoint = atoi( &kludgefind[6] );
  434.                  kludgefind = strstr(text, "\01TOPT");
  435.                  if(kludgefind == NULL)
  436.                      msg->destpoint = 0;
  437.                  else
  438.                      msg->destpoint = atoi( &kludgefind[6] );
  439.              }
  440.  
  441.              return successful;
  442.          }
  443.  
  444.          void main(void)
  445.          {
  446.              struct fts1 msg;
  447.              struct ffblk f;
  448.              char text[MAXMSGSIZE], directory[128], wildcard[128],
  449.      FIDONEWS 13-45               Page 8                    4 Nov 1996
  450.  
  451.  
  452.                   msgname[128];
  453.              int done;
  454.  
  455.              /* initialise directory and wilcard */
  456.              strcpy(directory, "\\fd\\mail\\");
  457.              sprintf(wildcard, "%s*.msg", directory);
  458.  
  459.              /* main list output section */
  460.              done = findfirst(wildcard, &f, FA_ARCH);
  461.              while(!done)
  462.              {
  463.                  sprintf(msgname, "%s%s", directory, f.ff_name);
  464.                  readmsg(&msg, text, MAXMSGSIZE, msgname);
  465.                  printf("%-12s From: %s (%d:%d/%d.%d)\n", f.ff_name,
  466.                      msg.fromusername, msg.origzone, msg.orignet,
  467.                      msg.orignode, msg.origpoint);
  468.                  done = findnext(&f);
  469.              }
  470.          }
  471.      ======================================================================
  472.  
  473.      Conclusion
  474.  
  475.      Although there is much more to know about *.MSG netmail messages than
  476.      is covered in this brief tutorial, I hope that it has given a start to
  477.      those of you who were interested in message programming.
  478.          If you're a programmer who uses a language other than C, but you
  479.      can read C code, then the concepts discussed here can be easily
  480.      transferred.  I've successfully written message routines in both C and
  481.      BASIC using the same principles.
  482.          And now a few acknowledgements.  Thanks must go to Bill Birrell at
  483.      2:2504/200, as he originally showed in the C_ECHO how simple the
  484.      rudimentary message programming could be, and thus got me started
  485.      along the road to writing a successful piece of Fidonet software.
  486.          Information about *.MSG files was drawn from FTS-1 and from my own
  487.      code.  Most of the code was written specially for this tutorial, with
  488.      the exception of a small section of the header file extracted from
  489.      the InfoMail source code.
  490.          Some general information on the C language and its functions as
  491.      used here was obtained from K&R's 'The C Programming Language' (second
  492.      edition) and from the 'info' documentation for the DJGPP compiler.
  493.          As with all articles submitted by me for FidoNews, feedback is
  494.      always welcome.
  495.  
  496.      -----------------------------------------------------------------
  497.  
  498.  
  499.      Read Read Read
  500.         by Bob Moravsik
  501.  
  502.      I'll limit this article to addressing only three
  503.      issues:
  504.  
  505.      1.  The foolish attempt at a local policy in Z2
  506.      2.  Our nodelist policeman
  507.      3.  The Elist and R13 conference.
  508.      FIDONEWS 13-45               Page 9                    4 Nov 1996
  509.  
  510.  
  511.      Mr. Kindness of Z2 dismisses section one of policy 4.07
  512.      by the old...its none of your business.  Probably the
  513.      only rebutable he has left in his diminishing arsenal.
  514.      An "echopol" in Z2, because it might only apply to Z2
  515.      is a "local policy".  Section one of Fidonet's policy
  516.      (a brilliant piece of work) addresses this:
  517.  
  518.      "Seperate policy documents may be issued at the zone,
  519.      region or net level to provide ADDITIONAL detail on
  520.      local procedures."  let's stop here for a minute.
  521.  
  522.        This policy may only profide ADDITIONAL details
  523.        not different ones and the must address local
  524.        PROCEDURES.  Very limiting...let's go on
  525.  
  526.      "Ordinarily, these local level policies may not
  527.      contradict this policy.  However (the exception), with
  528.      the APROVAL OF THE INTERNATIONAL COORDINATATOR (note)
  529.      local policy can be used to implement differences REQUIRED
  530.      due to local conditions."  OK  let's pause.
  531.  
  532.      Can't contradict, but they may if:
  533.  
  534.          1. Approved by the IC
  535.          2. and differences are REQUIRED...
  536.  
  537.      Again...pretty limitting.
  538.  
  539.      "These local policies MAY NOT place additional restrictions
  540.      on members of Fidonet beyond those included in this document
  541.      OTHER then enforcement of local periods."
  542.  
  543.         1. No additional restrictions.
  544.  
  545.      Simply taken all together:
  546.  
  547.      Z2 Woodmorepol:
  548.  
  549.         1. Limited to ADDITIONAL details
  550.         2. Must be approved by the IC if there are differences.
  551.         3. These difference must be REQUIRED (not desired)
  552.         4. They can interpose ADDITIONAL restrictions.
  553.  
  554.      Section one was designed to prevent a local policy for
  555.      the sake of itself.  Mr. Kindness indicates that a
  556.      Zone 2 policy would only apply to Z2 conferences.
  557.      What's a Z2 conference ?  Originates in Z2 ?  Travels
  558.      only in Z2 ?  Has only a Z2 moderator. ?  See the
  559.      foolishness.  A Z2 router routes FN_SYSOP and Z2_SYSOP.
  560.      Does Woodmorepol apply to one and not the other ?
  561.  
  562.      In summary...a geographic policy is impractical in
  563.      an internation society.  It serves NO PURPOSE.  It
  564.      does nothing good except serve as a "prayer" to the
  565.      local Fidogods.
  566.  
  567.      FIDONEWS 13-45               Page 10                   4 Nov 1996
  568.  
  569.  
  570.      Mr. Kindness, I do applaud you recognition of a global
  571.      policy HOWEVER...Fidonet has 6 zones.  Any replacement
  572.      policy which includes echomail or conferences requires
  573.      50%+1 of the RC's to present to the IC THEN 50%+1 of
  574.      the *C's to vote for it positively.   Until then all
  575.      you have is a "circle jerk" which any node in Z2 can
  576.      "attack" as being violative of section one.  Section 8
  577.      does not provide for a local ratification of Woodmorepol.
  578.      You have to use wild imagination to read THAT into 9.9.
  579.  
  580.      Lastly...it IS my business and I will continue to
  581.      make it my business.  By not filing a PC against me
  582.      it is your admission that I'm right and you are wrong.
  583.      My  NC is Sean Aldrich 1:2606/0...the lines are open.
  584.  
  585.      ++++The Nodelist police
  586.  
  587.      I see an article which is a netmail from John Souvestre aka
  588.      John John where he is doing ZC1 impressions.  I looked
  589.      through policy to see where they define a John John.  Not
  590.      there (at least I'm an HC).  In the Fidonet conference John
  591.      John was as who made HIM the spokesperson for the ZC1.  The
  592.      reply was a "sidestep" with a not ma job retort.  Is John
  593.      John looking for the IC slot ?  Remember, John John runs
  594.      a business selling echomail links via internet for $30
  595.      a month.  Is there a connection ?  Is Fidonet going
  596.      "commercial".   What's the motivation for John John to
  597.      strap on a cap gun, get the plastic badge from a cerial
  598.      box and point the guns at the ZC2.  Seems to me Bob Satti
  599.      should be resolving this issue IF IN FACT IT REALLY EXISTS.
  600.      The absense of the ZC1's statement on the Z2 segment is
  601.      indicative of an issue made up for a purpose OTHER then
  602.      Fidonet.   But then its hard to discuss much with John
  603.      John.  He filters out anybody that doesn't agree with him.
  604.  
  605.      +++++Region 13's echos and the Elist.
  606.  
  607.      Region 13 has lots of region echos now.  None anymore
  608.      official then the rest.    The RC's conference is limited
  609.      to his friends and the rest of the region uses the
  610.      original ones.  Region 13 is composed of two practical
  611.      regions.  The one the RC coordinates with  5/6 nets
  612.      and the rest which is "self coordinaed".  The nodes have
  613.      the choice as to the conferences.   Its what Fidonet is
  614.      all about.  The free and unrestricted right to communicate
  615.      subject only to the restrictions in Policy 4.07.
  616.  
  617.      To conclude this matter.  The RC 13 became guided more
  618.      by an emotional outburst then his obligation to provide
  619.      for smooth operations.  After sending threating EMAIL and
  620.      now seeing that he was 100% in the wrong chooses to
  621.      remain unavailable to most of the region and will
  622.      bide his time until replaced.  Pretty PATHETIC.
  623.  
  624.      Bob Moravsik
  625.  
  626.      FIDONEWS 13-45               Page 11                   4 Nov 1996
  627.  
  628.  
  629.      -----------------------------------------------------------------
  630.  
  631.  
  632.      Furry, Tender, Sad Creatures
  633.      by Lee Kindness, 2:259/7, lkindnes@csl.co.uk
  634.  
  635.      When i asked about the FTSC 'charter' in NET_DEV i received this via
  636.      crash mail. It makes quite interesting reading, especially points B1
  637.      and B3c, which have not been met by the FTSC.
  638.  
  639.      It is also worth noting that FSC-0000 (or FTS-0000) no longer exists
  640.      in the FTSC archive.
  641.  
  642.      Oh, just for the hell of it, I've highlighted the three spelling
  643.      mistakes in the FTSC's document - Spelling ain't their strong
  644.      point ;)
  645.  
  646.                           FidoNet(tm) Standards Committee
  647.                               FSC Goals and Organization
  648.                               FSC000-6 - August 18, 1986
  649.  
  650.  
  651.       A. The Problems
  652.  
  653.          1. Implementors of FidoNet software (Fido itself and the many
  654.             emerging 'FidoClones') need a rigorous definition of FidoNet.
  655.  
  656.          2. When deciding whether to list a class of nodes in the node
  657.             list, the IFNA has no way of knowing if a FidoClone is
  658.             sufficiently compatible with FidoNet to be 'safe' to list.
  659.  
  660.          3. Sysops need to know if a particular system will allow them to
  661.             access FidoNet.
  662.  
  663.          4. There are already two significant FidoNet standards, the one
  664.             that is implemented by Fido, and SEAdog's extensions; plus at
  665.             least one clone that seems incompatible (not by intent).  The
  666.             situation is becoming urgent.
  667.  
  668.  
  669.       B. The Goals
  670.  
  671.          1. Provide to implementors a rigorous definition of FidoNet and
  672.             all FidoNet protocols sufficient to implement a FidoClone
  673.             without recourse to other sources.
  674.  
  675.          2. Provide to IFNA the means to determine whether a system is
  676.             compatible with FidoNet.  This will allow the IFNA to list
  677.             compatible systems so Sysops may decide which system to
  678.             install.
  679.  
  680.          3. Produce the standards in three stages:
  681.  
  682.             a) Immediately document the existing FidoNet as implemented by
  683.                Fido itself,
  684.  
  685.      FIDONEWS 13-45               Page 12                   4 Nov 1996
  686.  
  687.  
  688.             b) Expand the definition to include SEAdog's capabilities, and
  689.  
  690.             c) Produce a newer, better, prettier, ... standard which
  691.                incorporates all the wonderful ideas we hear while defining
  692.                the first two above.
  693.  
  694.       C. What is to be Standardized
  695.          1. The Data Transmitted
  696.          2. The Connection
  697.          3. The Protocols
  698.          4. The Node List
  699.          5. Routing
  700.  
  701.       D. The Products
  702.  
  703.          1. Base FidoNet Definition - FidoNet as implemented by Fido
  704.             See document FSC001
  705.  
  706.          2. Standard for FidoNet with SEAdog and Other Existing Extensions
  707.             This is a similar to the Fido version above, but provides a
  708.             place to note the extensions and structural differences
  709.             a) Extensions
  710.                o File Request
  711.                o Update Request
  712.                o Return Receipt Request
  713.                o Audit trail request
  714.                o Passwording Pickup
  715.                o Always do CRC
  716.             b) Deletions
  717.  
  718.          3. Extended FidoNet Definition
  719.             Suggestions and ideas without regard to merit.  Inclusion
  720.             implies absoloutely no commitment to standardization.
  721.                     ^^^^^^^^^^^ [absolutely]
  722.             a) Extensions
  723.                1) Expanded net hierarchy (TH)
  724.                2) Make connection like logon so mono-modal implementations
  725.                   can be done (JB)
  726.                3) Add who REALLY from/to packet (TH)
  727.                4) Room for product-specific info in packet (TH)
  728.                5) Security (GW)
  729.                   a> Sending passwords (validating GETs and PICKUPs)
  730.                   b> Message encryption.  When on an intermediate node,
  731.                      origin and final destination may be confidential.
  732.                6) Non-homogenous messages in packet using MSGX2 (GW)
  733.                       ^^^^^^^^^^ [homogeneous]
  734.             b) Deletions
  735.  
  736.          4. NodeList and NodeList Processing
  737.             See document FSC002
  738.  
  739.       E. Members
  740.          1. Ben Baker 100/76, IFNA Technical
  741.          2. Randy Bush 122/6, Documentation
  742.          3. Bob Hartman 132/101, Protocol Review
  743.          4. Thom Henderson 107/8, SEAdog
  744.      FIDONEWS 13-45               Page 13                   4 Nov 1996
  745.  
  746.  
  747.          5. Tom Jennings 125/1, Fido
  748.          6. Ken Kaplan 100/22, IFNA Admin
  749.          7. Gee Wong 107/312, Testing and Validation
  750.  
  751.  
  752.       F. Acknowledgements
  753.          ^^^^^^^^^^^^^^^^ [Acknowledgments]
  754.  
  755.          FidoNet is a trademark of Tom Jennings
  756.  
  757.      -----------------------------------------------------------------
  758.  
  759.  
  760.      FTSC Comments, observations and general lilac wallpaper
  761.      by Lee Kindness, 2:259/7, lkindnes@csl.co.uk,
  762.      http://www.scms.rgu.ac.uk/students/cs_yr94/lk/fido.html
  763.  
  764.      Editorial of fnewsd43:
  765.       > The FTSC does NOT create standards nor does it impose standards.
  766.       > The FTSC documents existing standards as they become de facto
  767.       > operational practices for the majority of FidoNet participants
  768.       > and/or software
  769.  
  770.      That quote and various other messages by Heller in NET_DEV lead to
  771.      the interpretation that even thou the FTSC has not published or
  772.      promoted FTS documents in the recent past (OK there was a FTS-0005
  773.      UPDATE) this is because the current FTS documents represent the
  774.      present standards in use in Fidonet... hmmm...
  775.  
  776.      I invite all the FTSC to have a quick look in some packets on their
  777.      (well here we're assuming there Fidonet members) systems. Chances
  778.      are you'll find a type 2+ or 2.2 packet there and not an FTS-0001
  779.      type 2 packet. So does FTS-0001 reflect common practise? There's more
  780.      to be picked at in FTS-0001 too. But you know what the worst thing is?
  781.      FTS-0001 is a document that is copyrighted by a person THAT NO LONGER
  782.      IS A FIDONET MEMBER, we cannot update it without his consent (along
  783.      with a number of other FTS documents)
  784.  
  785.      The FTSC should never have accepted copyright documents into its
  786.      archive!
  787.  
  788.      And now lets take a look at FTS-0004... Oh this one is a real treat!
  789.  
  790.       o It's just an extract from a programs documentation! (Published by
  791.         a FTSC that will not promote the IEMSI spec to FTS status due to
  792.         its format)
  793.  
  794.       o Tear line:
  795.  
  796.         o Do we need it?
  797.  
  798.         o What's the maximum size?
  799.  
  800.       o Origin line, that is nice! FTS-004 states:
  801.  
  802.         o It is optional (ha, send a message and see how far it gets,
  803.      FIDONEWS 13-45               Page 14                   4 Nov 1996
  804.  
  805.  
  806.           or what the recipient thinks your address is)
  807.  
  808.         o Although it shows an example with the network address in
  809.           brackets, it does not state these are required.
  810.  
  811.         o No maximum size.
  812.  
  813.       o SEEN-BY lines:
  814.  
  815.         o No maximum line length
  816.  
  817.         o No maximum amount of lines (even thou the Conference Mail
  818.           System itself strips lines after a certain amount).
  819.  
  820.         o Does not state SEEN-BY lines must be stripped at zone gates
  821.           (due to their 2D nature).
  822.  
  823.         o Does not state net/node pairs must be in sorted order, with a
  824.           sticky net.
  825.  
  826.       o PATH lines:
  827.  
  828.         o States no maximum line length.
  829.  
  830.         o No maximum amount of lines.
  831.  
  832.         o States the PATH line is OPTIONAL!!!
  833.  
  834.         o Does not state net/node pairs must be in sorted order, with a
  835.           sticky net.
  836.  
  837.      FSC-0074 should have been adopted as FTS-0004 the minute it was
  838.      submitted to the FTSC! (well before the FTSC put the stupid ^A should
  839.      be handled equally rubbish). When Chris said he'll be posting the FTS
  840.      documents in future issues of Fidonews I was sitting there saying
  841.  
  842.       "Yeh, FTS-0004 will have an extension of .JOK"
  843.  
  844.      The structure and membership of the FTSC is also amazing. Long gone
  845.      are the days of the FTSC echo, the FTSC now communicates using an
  846.      internet e-mail list... Long gone are the days of the FTSC file echo
  847.      to transport updated/new documents to fidonet nodes, got to get them
  848.      by the internet now... Actually I'd be willing to bet that at least
  849.      half of the FTSCs members don't even use Fidonet!
  850.  
  851.      I'm sure that's a couple of points for the FTSC to mull over...
  852.  
  853.      -----------------------------------------------------------------
  854.  
  855.  
  856.      Trias Politica and FidoNet
  857.      By Frederik Retsema (2:280/905.1)
  858.  
  859.      ------------------------------------------------------------------
  860.      - Readers in Holland: this article is an English translation of  -
  861.      - the Cursief-part in R28-nieuws of October 1996. You might want -
  862.      FIDONEWS 13-45               Page 15                   4 Nov 1996
  863.  
  864.  
  865.      - to read the Dutch article and react in the Dutch echomailarea  -
  866.      - CSO.028.                                                       -
  867.      -                                                                -
  868.      - Readers in zone 2: this article is also posted in the area     -
  869.      - ECHOPOL2. You might want to react there.                       -
  870.      ------------------------------------------------------------------
  871.  
  872.      In zone 2 we are trying to make a new Echomail-policy. One of the
  873.      main problems seems to be the "powerplay" of some moderators. I
  874.      think one of the basics of the "real-world", the so-called Trias
  875.      Politica may help to solve this problem.
  876.  
  877.      At school (an IT-school with much Economic stuff) I learned about
  878.      this Trias Politica. It means that the way we deal with rules is
  879.      split up in three parts:
  880.  
  881.      1 people who make rules (normally: the Government)
  882.      2 people who take care that others obey the rules (normally: the
  883.        police)
  884.      3 people who judge about people who don't agree with each other
  885.        about the rules (on a case-by-case base).
  886.  
  887.      Each of these parts is independent of each other: judges f.e. don't
  888.      make rules, politicians don't judge in specific cases (but: are
  889.      allowed to change rules to prevent judges to judge in the same way
  890.      again). Someone can have a role in one of these parts, but never
  891.      in more then one.
  892.  
  893.      This prevents powerplay: judges are independent, but have to stick
  894.      to the rules, police must stick to the rules, but if a judge dis-
  895.      agrees with the way the rules are dealt with he can overrule the
  896.      decision of the police. The Government can play powerplay with the
  897.      rules, but well, there has to be a great majority of people who
  898.      agrees with these rules to implement these rules. The less contro-
  899.      versial the rule, the more change to be implemented.
  900.  
  901.      Now let's have a look at FidoNet.
  902.  
  903.      Moderators are allowed to make the rules (part 1), are allowed to
  904.      judge about these rules (part 3) and are allowed to act against
  905.      people who don't obey these rules (part 2). See the problem ? This
  906.      is _the_ base of powerplay.
  907.  
  908.      Let's go one step higher: the *EC's. These people are allowed to
  909.      deal with problems between moderators and echo-participants
  910.      (part 3), are allowed to take actions against people generating
  911.      dupes (part 2) and in zone 2 the ZEC has also a key-role in making
  912.      the rules for echomail (part 1).
  913.  
  914.      FidoNet has separated the tasks of netmail- and echomail-
  915.      coordinators by making *C's and *EC's, has also separated the task
  916.      at regional levels (area, net, region and zone), but at each level
  917.      each coordinator has ALL types of powers.
  918.  
  919.      I think it would be wise to change this. An example of how this
  920.      could be done:
  921.      FIDONEWS 13-45               Page 16                   4 Nov 1996
  922.  
  923.  
  924.      Area-level:
  925.      -----------
  926.      Moderators: I think anyone agrees that the key-role of a moderator
  927.      is to enforce the echorules. So let him ONLY enforce the rules: if
  928.      someone doesn't stick to the rules, let the moderator warn him and
  929.      let him cut links if he thinks links should be cut.
  930.  
  931.      Echomail-keeper: to make it possible for *EC's to see what has
  932.      happened IN the area an independent echomail-keeper should keep at
  933.      least (let's say) three months of echomail of that area. This task
  934.      should NOT be done by the moderator, as the moderator is likely to
  935.      be one of the party's in the judgement of the *EC (and therefore
  936.      the moderator might gain profit by deleting some messages).
  937.  
  938.      Rule-changes: When someone wants the rules to change, then he may
  939.      make a proposal of better rules. This new rules-file can then be
  940.      subject to a vote. When more than 50% of the people who voted
  941.      agrees that the new proposal is a good one, this new rules-file
  942.      will act as the new echomail-rules. The moderator should NOT be
  943.      the returning officer of the vote, as the moderator would have two
  944.      different parts of the Trias Politica.
  945.  
  946.      Net/Region/Zone-level
  947.      ---------------------
  948.      *EC's: let these people ONLY judge. Not dealing in making policy's
  949.      (this can as well be a dedicated task, performed by a skilled node
  950.      or point), not enforcing rules at dupes, etc.
  951.  
  952.      CRP-organisations: Cost Recovery Program-organisations (in Holland
  953.      also called CSO's: Cost Sharing Organisations) do deal already with
  954.      links: let these organisations also deal with the dupes. Problems
  955.      with dupes can be dealt with by people or workgroups within these
  956.      CRP's, just as people in these CRP's please. When more than one CRP
  957.      is active for one area, let the CRP's coordinate the links between
  958.      the CRP's and let the *EC-structure judge when two CRP's disagree.
  959.  
  960.      Rule-changes: see area-level. Let ANYONE who thinks some rules can
  961.      be improved say so in the international areas or in FidoNews, let's
  962.      think about it, discuss it and let's vote about it. It is not
  963.      recommended to let a *EC to be the returning-officer.
  964.  
  965.      A reaction to these ideas would be appreciated ;-).
  966.  
  967.      Frederik Retsema
  968.      (2:280/905.1)
  969.  
  970.      -----------------------------------------------------------------
  971.  
  972.  
  973.      Are We Talking About the Same UN'I-Net?
  974.      Seanette Blaylock, 1:206/2735, seanette@aol.com
  975.  
  976.      This is in response to a Fidonews article submitted by Rob A Shinn
  977.      (surak@juno.com).
  978.  
  979.      Mr. Shinn, in citing examples of networks with overly restrictive
  980.      FIDONEWS 13-45               Page 17                   4 Nov 1996
  981.  
  982.  
  983.      rules, cites UN'I-Net as being so restrictive that a user can be
  984.      kicked off the net for misspelling the net's name.
  985.  
  986.      With no disrespect to Mr. Shinn intended, I can't help wondering if
  987.      he's thinking of the same UN'I-Net that I've been an active, regular
  988.      participant in since about April 1994. In that time, I've seen a very
  989.      few people given temporary "vacations" from specific conferences for
  990.      behavior that in Fido terms would be deemed "excessively annoying"
  991.      and was in direct violation of conference rules and/or what few net
  992.      guidelines exist.
  993.  
  994.      My husband has been a regular, active participant on UN'I-Net for
  995.      considerably longer than I have. In his time on the net, he recalls
  996.      exactly *one* case of a user being kicked off the net, and this was
  997.      for *repeated* posting of commercial advertisements in conferences
  998.      in which this was a violation of conference rules. The offender,
  999.      according to my information, deliberately continued these posts after
  1000.      receiving warnings from the hosts of the affected conferences.
  1001.  
  1002.      I've heard quite a bit of hearsay about Intelec, but have never
  1003.      participated in that network, so I won't comment on Mr. Shinn's
  1004.      remarks, except to say that his comments about Intelec match what
  1005.      I've heard from sources I consider reliable.
  1006.  
  1007.      I've greatly enjoyed my participation on UN'I-Net. It's not as varied
  1008.      or geographically wide-spread as Fido, but both nets have their good
  1009.      points, mostly the people who use them. I'm sorry Mr. Shinn apparently
  1010.      has a grudge against UN'I-Net, but his remarks about the net in
  1011.      question were completely at odds with my own experiences on that net.
  1012.  
  1013.      Respectfully submitted,
  1014.      Seanette Blaylock
  1015.  
  1016.      -----------------------------------------------------------------
  1017.  
  1018.      FIDONEWS 13-45               Page 18                   4 Nov 1996
  1019.  
  1020.  
  1021.      =================================================================
  1022.                                   COLUMNS
  1023.      =================================================================
  1024.  
  1025.  
  1026.      [This is the first of a promised series of weekly reports from
  1027.       Europe.] Ed.
  1028.  
  1029.      FIDONET IN EUROPE
  1030.      -----------------
  1031.      by Dave Meikle [2:259/58.90 , Europe@p90.f58.n259.z2.fidouk.org]
  1032.  
  1033.      No mail has been send to me but there is two things hapening in
  1034.      Scotland First:
  1035.  
  1036.                        <-> THE REBEL JAMBO BBS <->
  1037.                   Home Of The Fidonet in Europe Coloum
  1038.                          Fidonet: 2:259/58.90
  1039.                    Sysop@p90.f58.n259.z2.fidouk.org
  1040.  
  1041.      We have produced a WWW page , it is at :
  1042.                 http://www.thebbslist.com/free-page/rebeljambo.html
  1043.  
  1044.      Second:
  1045.                              The /\/ess BBS
  1046.             Fidonet: 2:259/57.7       Amiganet: 39:137/10.7
  1047.             Ufo/BBSnet: 405:126/2.7   eMAIL: Zerox@thenet.co.uk
  1048.  
  1049.              +44 (0)1463 230062     7days 10pm-7am Uk.
  1050.  
  1051.      Thats all this week Remember the Submission address's are
  1052.  
  1053.      FIDONET: Europe@2:259/58.90
  1054.      eMAIL: euro@p90.f58.n259.z2.fidouk.org
  1055.  
  1056.      Cheers Dave
  1057.  
  1058.      -----------------------------------------------------------------
  1059.  
  1060.      FIDONEWS 13-45               Page 19                   4 Nov 1996
  1061.  
  1062.  
  1063.      =================================================================
  1064.                              GETTING TECHNICAL
  1065.      =================================================================
  1066.  
  1067.  
  1068.      [This is a list of all the Standards and Proposals recorded at the
  1069.      time of its publishing. These files are available at most of the
  1070.      sources listed in the Masthead info at the end of FidoNews. They are
  1071.      all available here at 1:18/14. An FTS is a Standard. Some are
  1072.      mandatory and some are not. If they are used, they must be used as
  1073.      published. An FSC is a proposal. If they are used, they should be used
  1074.      as published but such use cannot be mandated.] Ed.
  1075.  
  1076.  
  1077.      -   FidoNet Technical Standards Committee Document Archive
  1078.      -   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1079.      -   Official FidoNet Technical Standards
  1080.      -
  1081.      FTS-0001.ZIP A basic FidoNet(r) technical standard, R Bush
  1082.      FTS-0002     *Obsoleted by FTS-0005*
  1083.      FTS-0003     *Obsoleted by FTS-0006*
  1084.      FTS-0004.ZIP Echomail specification, B Hartman
  1085.      FTS-0005.ZIP The distribution nodelist,  B Baker, R Moore
  1086.      FTS-0006.ZIP YOOHOO and YOOHOO/2U2, V Perriello
  1087.      FTS-0007.ZIP SEAlink protocol extension, P Becker
  1088.      FTS-0008.ZIP Bark file-request protocol extension, P Becker
  1089.      FTS-0009.ZIP Message identification and reply linkage, j nutt
  1090.      -
  1091.      -   FidoNet Standards Proposals And Miscellaneous Documents
  1092.      -   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1093.      FSC-0001     *Obsoleted by FTS-0001*
  1094.      FSC-0002     *Obsoleted by FTS-0005*
  1095.      FSC-0003.ZIP FidoNet Route Files Explained, B Baker
  1096.      FSC-0004.ZIP Zones and Zonegates explained primitively, R Bush
  1097.      FSC-0005.ZIP Opus 1.01 Netmail passwording scheme, W Wagner
  1098.      FSC-0006     *Obsoleted by FTS-0006*
  1099.      FSC-0007.ZIP RFC-822-style msg header proposal, R Heller
  1100.      FSC-0008.lzh *Obsoleted by FSC-0015
  1101.      FSC-0009.ZIP Nodelist Flag Draft Document Gwinn/Dodell
  1102.      FSC-0010.ZIP Dutchie 2.80 SEAlink File Resynch, H Wevers
  1103.      FSC-0011.ZIP Experiences/corrections to FSC-0001, B Hartman
  1104.      FSC-0012     *Obsoleted by FTS-0004*
  1105.      FSC-0013     *Obsoleted by FTS-0008*
  1106.      FSC-0014.ZIP Binary-style msg proposal, W Wagner
  1107.      FSC-0015.ZIP FOSSIL 5.0 Documentation, R Moore
  1108.      FSC-0016.ZIP FidoNet Mail Session Startup, R Hartman
  1109.      FSC-0017.ZIP Archive Philosophy and Document Naming, R Bush
  1110.      FSC-0018     *Obsoleted by FTS-LIST*
  1111.      FSC-0019     *Obsoleted by FTS-0007*
  1112.      FSC-0020.ZIP Alternate Nodelist Flag Proposal M Presnell
  1113.      FSC-0021.ZIP VFOSSIL, OS/2 Video FOSSIL Appendage R Moore
  1114.      FSC-0022     *Obsoleted by FSC-0090*
  1115.      FSC-0023.ZIP Bundle naming convention proposal R Meyer
  1116.      FSC-0024.ZIP Binary bundle proposal, O McDonald
  1117.      FSC-0025.ZIP AVATAR Video Spec, G Stanislav
  1118.      FSC-0026     *Obsoleted by FTS-LIST*
  1119.      FIDONEWS 13-45               Page 20                   4 Nov 1996
  1120.  
  1121.  
  1122.      FSC-0027     *Obsoleted by FTS-0005*
  1123.      FSC-0028.ZIP Proposed file-forwarding standard, H Lee
  1124.      FSC-0029     *Reserved for future use*
  1125.      FSC-0030.ZIP Proposal for message identification, J Cowan
  1126.      FSC-0031.ZIP Proposed message id/linkage standard, M Ratledge
  1127.      FSC-0032.ZIP Proposed message quoting standard, M Ratledge
  1128.      FSC-0033.ZIP Proposal for message identification, T Kover
  1129.      FSC-0034.ZIP Gateways to and from FidoNet, R Bush
  1130.      FSC-0035.ZIP Transparent gateways to/from FidoNet, M Shiels
  1131.      FSC-0036.ZIP Group Mail specification, D Lovell
  1132.      FSC-0037.ZIP AVATAR 0+ Video Spec, G Stanislav
  1133.      FSC-0038.ZIP Proposed domain gating protocol, j nutt
  1134.      FSC-0039.ZIP A type-2 packet extension proposal, M Howard
  1135.      FSC-0040.ZIP Proposed modem handling extension, M Shiels
  1136.      FSC-0041     *Obsoleted by FTS-0009*
  1137.      FSC-0042.ZIP A modified gateway agreement, S Furber
  1138.      FSC-0043.ZIP Some hints on recognizing control lines in FidoNet(r)
  1139.                   message text, R Bush
  1140.      FSC-0044.ZIP Improved duplicate detection, J Decker
  1141.      FSC-0045.ZIP Proposed new packet header, T Henderson
  1142.      FSC-0046.ZIP Proposed product identifier, J Homrighausen
  1143.      FSC-0047.ZIP The ^ASPLIT kludge line, P Terry
  1144.      FSC-0048.ZIP Proposed type-2 packet extension, J Vroonhof
  1145.      FSC-0049.ZIP A proposal for passing domain information during FTS-0006
  1146.                   sessions, B Hartman
  1147.      FSC-0050.ZIP A character set identifier for FidoNet message editors, T
  1148.                   Sundblom
  1149.      FSC-0051.ZIP A system-independent way of transferring special
  1150.                   characters,  T Gradin
  1151.      FSC-0052.ZIP A proposal for making the PATH zone aware, G van der Land
  1152.      FSC-0053.ZIP Specifications for the ^aFLAGS field, J Homrighausen
  1153.      FSC-0054.ZIP The CHARSET proposal,  D McNutt
  1154.      FSC-0054.ZIP A system independant way of transferring special
  1155.                   characters, Duncan McNutt
  1156.      FSC-0055.ZIP Security passwords in nodelist updates, L Kolin
  1157.      FSC-0056.ZIP EMSI/IEMSI Protocol Definition, J Homrighausen
  1158.      FSC-0057.ZIP Echo Area Managers - Specifications For Requests, F
  1159.                   Fabris, J Homrighausen
  1160.      FSC-0058.ZIP A New Way Of Addressing In FidoNet, W Van Sebroeck, J
  1161.                   Spooren
  1162.      FSC-0059.ZIP Newsgroup Interchange within FidoNet, J Decker
  1163.      FSC-0060.ZIP Calculation and Usage of CRC's, F van der Loos
  1164.      FSC-0061.ZIP Proposed Guidelines for the FileBone, E VanRiper
  1165.      FSC-0062.ZIP Nodelist Flag Indicating Online Times, D Thomas
  1166.      FSC-0063.ZIP Proposal For FidoNet Messages, J Miller
  1167.      FSC-0064.ZIP InterDomain Message ID, Gating, Linking and Addressing, J
  1168.                   Penner
  1169.      FSC-0065.ZIP Type 3 ASCII: A Proposal, M Kimes
  1170.      FSC-0066.ZIP Type 3 Binary: A Proposal, M Kimes
  1171.      FSC-0067.ZIP A Proposal For Sensible Kludge Lines, M Kimes
  1172.      FSC-0068.ZIP A Proposed Replacement For FTS-0004, M. Kimes
  1173.      FSC-0069.ZIP A FidoNet (FTN) Domain Name Service, R Heller F Arnaud
  1174.      FSC-0070.ZIP Improving FidoNet/UseNet Gating and Dupe Checking,
  1175.      FSC-0071.ZIP Distributed FREQ (DFREQ) Specifications, B Auclair
  1176.      FSC-0072.ZIP The HYDRA file transfer protocol, J Homrighausen, A Lentz
  1177.      FSC-0073.ZIP Encrypted message identification for FidoNet, John Mudge
  1178.      FIDONEWS 13-45               Page 21                   4 Nov 1996
  1179.  
  1180.  
  1181.      FSC-0074.ZIP Proposed echomail specification, J Souvestre, D Troendle,
  1182.                   B Davis, G Peace
  1183.      FSC-0075.ZIP Proposal for ISDN capability flags in the nodelist, J
  1184.                   Ceuleers
  1185.      FSC-0076.ZIP Proposal for netmail areatags, S Gove
  1186.      FSC-0077.ZIP Proposed type-10 packet format, J Steck
  1187.      FSC-0078.ZIP Gateway between FidoNet compatible networks, C Lacerda
  1188.      FSC-0079.ZIP RTF mail: proposal for message formatting in the type-2
  1189.                   message packet, K Axon
  1190.      FSC-0080.ZIP Describing FidoNet with a layered model, Mikael Staldal
  1191.      FSC-0081.ZIP A type-3 packet proposal, Mikael Staldal
  1192.      FSC-0082.ZIP A proposed new packet type, S. Slabihoud
  1193.      FSC-0083.ZIP A proposed standard for message IDs on FTN systems,
  1194.                   J.de.Boyne.Pollard
  1195.      FSC-0084.ZIP EDX1: Electronic Data Exchange standard level 1, D.Bider
  1196.      FSC-0085.ZIP Proposal for the "NOZIP" and "ERX" nodelist flags,
  1197.                   D.Bider
  1198.      FSC-0086.ZIP SRIF: Description of a new Standard Requestion
  1199.                   Information File, M.Mucko
  1200.      FSC-0087.ZIP File forwarding in FidoNet technology networks,
  1201.                   R.Williamson
  1202.      FSC-0088.ZIP Compatibility and Link Qualifier Extensions for EMSI
  1203.                   sessions, R.Williamson
  1204.      FSC-0089.ZIP The INTL: netmail addressing control line, R.Williamson
  1205.      FSC-0090.ZIP FTSC Product Codes and Application Form
  1206.      FSC-0091.ZIP Proposal for ISDN nodelist flags, A Lentz
  1207.      FSC-0092.ZIP New control lines for forwarded messages, M.Hohner
  1208.      FSC-0093.ZIP Reduced seen-by lines, F.Ellermann
  1209.      -
  1210.      - FTSC Administrative Files
  1211.      -
  1212.      FTSCLIST.ZIP Directory of all FTSC files
  1213.      FTSCPROD.ZIP FTSC Product Codes (see also FSC-0091)
  1214.      -
  1215.      FTSC-ALL.ZIP Archive of all FTSC files as above
  1216.  
  1217.       -30-
  1218.  
  1219.      -----------------------------------------------------------------
  1220.  
  1221.  
  1222.      [This FTS was reformatted to fit the 70 character limit. The large
  1223.      tables suffered in the conversion. These are for info only. File-
  1224.      request a real copy soon for a neater presentation.] Ed.
  1225.  
  1226.      Document: FTS-0001
  1227.      Version:  016
  1228.      Date:     30-Sep-95
  1229.  
  1230.  
  1231.                           A Basic FidoNet(r) Technical Standard
  1232.      |                                Revision 16
  1233.                            Formerly known as FSC001,  FSC-0001
  1234.      |                      Randy Bush, Pacific Systems Group
  1235.      |                             September 30, 1995
  1236.  
  1237.      FIDONEWS 13-45               Page 22                   4 Nov 1996
  1238.  
  1239.  
  1240.      Status of this document:
  1241.  
  1242.          This FTS  (FidoNet(r)  Technical  Standard)  specifies  a
  1243.          standard  for the FidoNet community. FidoNet nodes are expected to
  1244.          adopt and implement this standard. Distribution is subject to the
  1245.          restrictions stated in the copyright paragraph below.
  1246.  
  1247.          Fido and FidoNet are registered marks of Tom Jennings and Fido
  1248.          Software.
  1249.  
  1250.          Copyright  1986-95,  Randy  Bush.  All  rights  reserved.   A
  1251.          right  to distribute only  without modification  and only at no
  1252.          charge is granted.  Under no  circumstances is this document to be
  1253.          reproduced or distributed as  part of  or packaged with any
  1254.          product or other sales transaction for which any fee is charged.
  1255.          Any and all other reproduction  or excerpting requires the
  1256.          explicit written consent of the author.
  1257.  
  1258.  
  1259.       A. Introduction
  1260.  
  1261.          FidoNet  has  grown  beyond  most  peoples' fantasies, and  new
  1262.          FidoNet implementations  are appearing regularly.  Unfortunately,
  1263.          the  scattered nature of the documentation and absence of clear
  1264.          testing procedures have made  implementation  difficult.
  1265.          FidoNet, in its desire to promote and encourage  FidoNet
  1266.          implementations,  suggested  a project  to create a technical
  1267.          standard for  FidoNet.  The author did not  design or specify
  1268.          the data formats or protocols, only attempted to document them.
  1269.  
  1270.          This  document defines the  data structures and communication
  1271.          protocols which a FidoNet implementation must provide.  The
  1272.          implementor of FidoNet compatible systems is the intended audience
  1273.          of this document.
  1274.  
  1275.          The  layered metaphor of the ISO Open Systems Interface reference
  1276.          model has been used to view FidoNet from a standard perspective.
  1277.          As with most prospective  ISO/OSI  descriptions, FidoNet  does not
  1278.          always  make  this easy.
  1279.  
  1280.          The  content of this document  was gleaned from the references
  1281.          given  at the  end.
  1282.  
  1283.          Please direct technical comments and errata to
  1284.      |     Randy Bush                       randy@psg.com
  1285.      |     Pacific Systems Group
  1286.            9501 S.W. Westhaven Drive
  1287.            Portland, Oregon  US-97225
  1288.      |
  1289.  
  1290.         1. Basic Requirements for a FidoNet Implementation
  1291.  
  1292.            Compatibility is a set of abilities which, when taken as a
  1293.            whole, make it safe to list a net or node in the FidoNet
  1294.            nodelist. In other words, if  another  node should attempt
  1295.            contact, does it have  a reasonable chance  of successful
  1296.      FIDONEWS 13-45               Page 23                   4 Nov 1996
  1297.  
  1298.  
  1299.            communication?  This is a social obligation,  as the  calling
  1300.            system  pays  money  for the  attempt.  Conversely,  an
  1301.            implementation  should be able to successfully contact other
  1302.            systems, as life is not a one-way street.
  1303.  
  1304.            A FidoNet implementation must be able to call other nodes and
  1305.            transfer messages and files in both directions.  This includes
  1306.            pickup and poll.  A FidoNet implementation must be able to
  1307.            accept calls from other nodes and  transfer  messages and  files
  1308.            in both directions.  This includes pickup.
  1309.  
  1310.            FidoNet implementations must be able to receive and process the
  1311.            FidoNet format  nodelist, and transfer nodelists to other nodes.
  1312.            A  companion document,  FTS-0005, defines the FidoNet format
  1313.            nodelist  and  how  to interpret and process it.
  1314.  
  1315.            A  FidoNet implementation must route messages which do not have
  1316.            files attached through net hosts as shown in a FidoNet format
  1317.            nodelist.
  1318.  
  1319.  
  1320.         2. Levels of Compliance
  1321.  
  1322.            This  documents represents the  most basic FidoNet
  1323.            implementation.   A future  document will define well tested
  1324.            extensions which are optional but  provide sufficient
  1325.            additional function that implementors should seriously
  1326.            consider   them.   SEAdog(tm),  from  System Enhancement
  1327.            Associates,  is  an  excellent  example  of such an extended
  1328.            FidoNet implementation.
  1329.  
  1330.  
  1331.         3. The ISO/OSI Reference Model (cribbed from "Protocol Verification
  1332.            via Executable Logic Specifications", D. P. Sidhu, in Rudin &
  1333.            West)
  1334.  
  1335.            In  the ISO/OSI model, a distributed system consists of entities
  1336.            that communicate  with  each other  according  to a set of rules
  1337.            called  a protocol.   The  model is  layered, and there are
  1338.            entities associated with  each layer of the model which provide
  1339.            services to higher  layers by  exchanging information with their
  1340.            peer entities using the services of  lower layers.  The only
  1341.            actual physical communication between  two systems is at the
  1342.            lowest level.
  1343.  
  1344.            Several  techniques  have  been  used  in the  specification  of
  1345.            such protocols.  A common ingredient in all techniques is the
  1346.            notion of the extended  finite  state automata  or machine.
  1347.            Extensions include  the addition of state variables for the
  1348.            storing of state information about the  protocol.  The state of
  1349.            an  automation can change as a result  of one of the following
  1350.            events:
  1351.  
  1352.            o Request from an upper network layer for service
  1353.  
  1354.            o Response to the upper layer
  1355.      FIDONEWS 13-45               Page 24                   4 Nov 1996
  1356.  
  1357.  
  1358.            o Request to the lower network layer to perform a service
  1359.  
  1360.            o Response from the lower layer
  1361.  
  1362.            o Interaction with the system and environment in which the
  1363.              protocol is implemented (e.g. timeouts, host operating system
  1364.              aborts, ...)
  1365.  
  1366.            A  protocol  specification, in  a large part, consists  of
  1367.            specifying state  changes  in  automata  which  model protocol
  1368.            entities  and  in describing the data which they exchange.
  1369.  
  1370.            For  historical  reasons,  the  term  packet  is used  in
  1371.            FidoNet  to represent a bundle of messages, as opposed to the
  1372.            more common use as a unit of communication, which is known as a
  1373.            block in FidoNet.
  1374.  
  1375.  
  1376.         4. Data Description
  1377.  
  1378.            A  language  specific  notation  was avoided.  Please help
  1379.            stamp  out environmental  dependencies.   Only  you  can
  1380.            prevent  PClone market dominance.  Don't panic, there are
  1381.            rectangular record layouts too.
  1382.  
  1383.            (* non-terminals *)
  1384.            UpperCaseName - to be defined further on
  1385.  
  1386.            (* literals *)
  1387.            "ABC"         - ASCII character string, no termination implied
  1388.            nnH           - byte in hexadecimal
  1389.  
  1390.            (* terminals *)
  1391.            someName      - 16-bit integer, low order byte first (8080
  1392.                            style)
  1393.            someName[n]   - field of n bytes
  1394.            someName[.n]  - field of n bits
  1395.            someName(n)   - Null terminated string allocated n chars (incl
  1396.                            Null)
  1397.            someName{max} - Null terminated string of up to max chars (incl
  1398.                            Null)
  1399.  
  1400.            (* punctuation *)
  1401.            a b           - one 'a' followed by one 'b'
  1402.            ( a | b )     - either 'a' or 'b', but not both
  1403.            { a }         - zero or more 'a's
  1404.            [ b ]         - zero or one 'b'
  1405.            (* comment *) - ignored
  1406.  
  1407.            (* predeclared constant *)
  1408.            Null          = 00H
  1409.  
  1410.  
  1411.  
  1412.       5. Finite State Machine Notation
  1413.  
  1414.      FIDONEWS 13-45               Page 25                   4 Nov 1996
  1415.  
  1416.  
  1417.      .-----+----------+-------------------+-------------------------+-----.
  1418.      |State | State | Predicate(s)        | Action(s)               | Next|
  1419.      |#     | Name  |                     |                         |  St |
  1420.      |-----+----------+-------------------------+-------------------------
  1421.      +-----|
  1422.      | fnn*|          |                         |
  1423.      |     | `-----+----------+-------------------------+--------------
  1424.      -----------+-----'
  1425.  
  1426.          State #      - Number of this state (e.g. R13).
  1427.                         f  - FSM initial (Window, Sender, Receiver, ...)
  1428.                         nn - state number
  1429.                         *  - state which represents a lower level protocol
  1430.                              which is represented by yet another
  1431.                              automation.
  1432.  
  1433.          State Name   - Descriptive name of this state.
  1434.  
  1435.          Predicate(s) - Conditions which terminate the state.  If
  1436.                         predicates are non-exclusive, consider them
  1437.                         ordered.
  1438.  
  1439.          Action(s)    - Action(s) corresponding to predicate(s)
  1440.  
  1441.          Next State   - Subsequent state corresponding to predicate(s)
  1442.  
  1443.          Ideally,  there  should be  a  supporting section for each  state
  1444.          which should  give a prose description of the state, its
  1445.          predicates,  actions, etc.  So much for ideals.
  1446.  
  1447.  
  1448.       B. Application Layer : the System from the User's View
  1449.  
  1450.          The application layer is outside the domain of a FidoNet standard,
  1451.          as it is the layer that the user's application sees as opposed to
  1452.          what FidoNet sees.   In  recent  months,  there  has been
  1453.          sufficient confusion  and discussion  about  the  format  of  data
  1454.          at this level  to  warrant  the description  of the data
  1455.          structure, the message as it is stored by Fido, SEAdog, and Rover.
  1456.  
  1457.          Perfectly valid FidoNet systems may be implemented whose stored
  1458.          messages differ greatly from this format.
  1459.  
  1460.  
  1461.         1. Application Layer Data Definition : a Stored Message
  1462.  
  1463.                                     Stored Message
  1464.  
  1465.             Offset
  1466.            dec hex
  1467.                    .-----------------------------------------------.
  1468.              0   0 |                                               |
  1469.                    ~                 fromUserName                  ~
  1470.                    |                   36 bytes                    |
  1471.                    +-----------------------+-----------------------+
  1472.             36  24 |                                               |
  1473.      FIDONEWS 13-45               Page 26                   4 Nov 1996
  1474.  
  1475.  
  1476.                    ~                  toUserName                   ~
  1477.                    |                   36 bytes                    |
  1478.                    +-----------------------+-----------------------+
  1479.             72  48 |                                               |
  1480.                    ~                    subject                    ~
  1481.                    |                   72  bytes                   |
  1482.                    +-----------------------+-----------------------+
  1483.            144  90 |                                               |
  1484.                    ~                    DateTime                   ~
  1485.                    |                    20 bytes                   |
  1486.                    +-----------------------+-----------------------+
  1487.            164  A4 | timesRead (low order) | timesRead (high order)|
  1488.                    +-----------------------+-----------------------+
  1489.            166  A6 | destNode (low order)  | destNode (high order) |
  1490.                    +-----------------------+-----------------------+
  1491.            168  A8 | origNode (low order)  | origNode (high order) |
  1492.                    +-----------------------+-----------------------+
  1493.            170  AA |   cost (low order)    |   cost (high order)   |
  1494.                    +-----------------------+-----------------------+
  1495.            172  AC | origNet (low order)   | origNet (high order)  |
  1496.                    +-----------------------+-----------------------+
  1497.            174  AE | destNet (low order)   | destNet (high order)  |
  1498.                    +-----------------------+-----------------------+
  1499.            176  B0 | destZone (optional)   | destZone (optional)   |
  1500.                    +-----------------------+-----------------------+
  1501.            178  B2 | origZone (optional)   | origZone (optional)   |
  1502.                    +-----------------------+-----------------------+
  1503.            180  B4 | destPoint(optional)   | destPoint(optional)   |
  1504.                    +-----------------------+-----------------------+
  1505.            182  B6 | origPoint(optional)   | origPoint(optional)   |
  1506.                    +-----------------------+-----------------------+
  1507.            184  B8 |  replyTo (low order)  |  replyTo (high order) |
  1508.                    +-----------------------+-----------------------+
  1509.            186  BA | Attribute (low order) | Attribute (high order)|
  1510.                    +-----------------------+-----------------------+
  1511.            188  BC | nextReply (low order) | nextReply (high order)|
  1512.                    +-----------------------+-----------------------+
  1513.            190  BE |                      text                     |
  1514.                    ~                    unbounded                  ~
  1515.                    |                 null terminated               |
  1516.                    `-----------------------------------------------'
  1517.  
  1518.            Message    = fromUserName(36)  (* Null terminated *)
  1519.                         toUserName(36)    (* Null terminated *)
  1520.                         subject(72)       (* see FileList below *)
  1521.                         DateTime          (* message body was last edited
  1522.                                              *)
  1523.                         timesRead         (* number of times msg has been
  1524.                                              read *)
  1525.                         destNode          (* of message *)
  1526.                         origNode          (* of message *)
  1527.                         cost              (* in lowest unit of originator's
  1528.                                              currency *)
  1529.                         origNet           (* of message *)
  1530.                         destNet           (* of message *)
  1531.                         destZone          (* of message *)
  1532.      FIDONEWS 13-45               Page 27                   4 Nov 1996
  1533.  
  1534.  
  1535.                         origZone          (* of message *)
  1536.                         destPoint         (* of message *)
  1537.                         origPoint         (* of message *)
  1538.                         replyTo           (* msg to which this replies *)
  1539.                         AttributeWord
  1540.                         nextReply         (* msg which replies to this *)
  1541.                         text(unbounded)   (* Null terminated *)
  1542.  
  1543.            DateTime   = (* a character string 20 characters long *)
  1544.                                           (* 01 Jan 86  02:34:56 *)
  1545.                         DayOfMonth " " Month " " Year " "
  1546.                         " " HH ":" MM ":" SS
  1547.                         Null
  1548.  
  1549.            DayOfMonth = "01" | "02" | "03" | ... | "31"  (* Fido 0 fills *)
  1550.            Month      = "Jan" | "Feb" | "Mar" | "Apr" | "May" | "Jun" |
  1551.                         "Jul" | "Aug" | "Sep" | "Oct" | "Nov" | "Dec"
  1552.            Year       = "01" | "02" | .. | "85" | "86" | ... | "99" | "00"
  1553.            HH         = "00" | .. | "23"
  1554.            MM         = "00" | .. | "59"
  1555.            SS         = "00" | .. | "59"
  1556.  
  1557.            AttributeWord   bit       meaning
  1558.                            ---       --------------------
  1559.                              0  +    Private
  1560.                              1  + s  Crash
  1561.                              2       Recd
  1562.                              3       Sent
  1563.                              4  +    FileAttached
  1564.                              5       InTransit
  1565.                              6       Orphan
  1566.                              7       KillSent
  1567.                              8       Local
  1568.                              9    s  HoldForPickup
  1569.                             10  +    unused
  1570.                             11    s  FileRequest
  1571.                             12  + s  ReturnReceiptRequest
  1572.                             13  + s  IsReturnReceipt
  1573.                             14  + s  AuditRequest
  1574.                             15    s  FileUpdateReq
  1575.  
  1576.                                   s - need not be recognized, but it's ok
  1577.                                   + - not zeroed before packeting
  1578.  
  1579.            Bits numbers ascend with arithmetic significance of bit
  1580.            position.
  1581.  
  1582.  
  1583.            Message Text
  1584.  
  1585.            Message text is unbounded and null terminated (note exception
  1586.            below).
  1587.  
  1588.            A 'hard' carriage return, 0DH,  marks the end of a paragraph,
  1589.            and must be preserved.
  1590.  
  1591.      FIDONEWS 13-45               Page 28                   4 Nov 1996
  1592.  
  1593.  
  1594.            So   called  'soft'  carriage  returns,  8DH,  may  mark  a
  1595.            previous processor's  automatic line wrap, and should be
  1596.            ignored.  Beware  that they may be followed by linefeeds, or may
  1597.            not.
  1598.  
  1599.            All  linefeeds, 0AH, should be ignored.  Systems which display
  1600.            message text should wrap long lines to suit their application.
  1601.  
  1602.            If the first character of a physical line (e.g. the first
  1603.            character of the  message text, or the character immediately
  1604.            after a hard carriage return (ignoring any linefeeds)) is a ^A
  1605.            (<control-A>, 01H), then that line  is  not  displayed  as  it
  1606.            contains control  information.  The convention for such control
  1607.            lines is:
  1608.              o They begin with ^A
  1609.              o They end at the end of the physical line (i.e. ignore soft
  1610.                <cr>s).
  1611.              o They begin with a keyword followed by a colon.
  1612.              o The keywords are uniquely assigned to applications.
  1613.              o They keyword/colon pair is followed by application specific
  1614.                data.
  1615.  
  1616.            Current ^A keyword assignments are:
  1617.      |     o TOPT <pt no> - destination point address
  1618.            o FMPT <pt no> - origin point address
  1619.            o INTL <dest z:n/n> <orig z:n/n> - used for inter-zone address
  1620.  
  1621.  
  1622.            File Specifications
  1623.  
  1624.            If  one  or more  of FileAttached, FileRequest, or
  1625.            FileUpdateReq  are asserted  in an AttributeWord, the
  1626.            subject{72} field is interpreted as a list of file
  1627.            specifications  which may include wildcards and other system-
  1628.            dependent data.  This list is of the form
  1629.  
  1630.            FileList = [ FileSpec { Sep FileSpec } ] Null
  1631.  
  1632.            FileSpec = (* implementation dependent file specification.  may
  1633.                          not contain Null or any of the characters in Sep.
  1634.                          *)
  1635.  
  1636.            Sep      = ( " " | "," )  { " " }
  1637.  
  1638.  
  1639.            There are deviations from and additions to these specifications
  1640.  
  1641.            1  - Fido does not necessarily terminate the message text with a
  1642.                 Null, but  uses  an empty line (0DH 0AH 0DH 0AH).  Some
  1643.                 Fido utilities use an EOF (1AH).
  1644.  
  1645.            2 - SEAdog zeros the message cost field when building a message.
  1646.  
  1647.            4 - SEAdog uses a different format for dates, e.g.
  1648.  
  1649.            DateTime   = (* a character string 20 characters long *)
  1650.      FIDONEWS 13-45               Page 29                   4 Nov 1996
  1651.  
  1652.  
  1653.                         (* SEAdog format Mon  1 Jan 86 02:34 *)
  1654.                         DayOfWk " " DayOfMo " " Month " " Year " " HH ":"
  1655.                         MM Null
  1656.  
  1657.            DayOfWk  = "Mon" | "Tue" | "Wed" | "Thu" | "Fri" | "Sat" | "Sun"
  1658.            DayOfMo  = " 1" | " 2" | " 3" | ... | "31"  (* blank fill *)
  1659.  
  1660.  
  1661.  
  1662.         2. Application Layer Protocol : Schedules and Events
  1663.  
  1664.            At  the application level, FidoNet imposes few protocol
  1665.            requirements.  An implementation   must   automatically
  1666.            originate  and receive node-to-node  FidoNet  connections.
  1667.            Some implementations do this  in 'windows'  or  time  slots.
  1668.            Routing  of  messages  will usually  be different and
  1669.            customizable for each scheduled window.
  1670.  
  1671.            The ability to send to and receive from any FidoNet listed node
  1672.            during the Zone Mail Hour (eg. 9:00-10:00 UCT in Z1) is
  1673.            considered mandatory.
  1674.  
  1675.            Current  implementations assemble all data for outbound
  1676.            connections at the  start of a window, and  disassemble inbound
  1677.            data at the end of  a window.   Due to performance
  1678.            considerations on small machines, this is considered  a valid
  1679.            optimization.   Observe that it somewhat inhibits dynamic
  1680.            routing.
  1681.  
  1682.  
  1683.       C. Presentation Layer : the User from the System's View
  1684.  
  1685.         1. Presentation Layer Data Definition : the Packed Message
  1686.  
  1687.            To  conserve space and eliminate fields which would be
  1688.            meaningless  if sent  (e.g. timesRead), messages are packed for
  1689.            transmission.  As this is  a data structure which is actually
  1690.            transferred, its definition  is critical  to FidoNet.  A packed
  1691.            message has a number of fixed  length fields followed by four
  1692.            null terminated strings.
  1693.  
  1694.            While  most of the string fields in a stored message are fixed
  1695.            length, to  conserve space strings are variable length when in a
  1696.            packet.  All variable  length strings are all Null terminated,
  1697.            including especially the message text.
  1698.  
  1699.  
  1700.                                      Packed Message
  1701.  
  1702.             Offset
  1703.            dec hex
  1704.                    .-----------------------------------------------.
  1705.              0   0 |    0     |     2      |    0      |    0      |
  1706.                    +-----------------------+-----------------------+
  1707.              2   2 | origNode (low order)  | origNode (high order) |
  1708.                    +-----------------------+-----------------------+
  1709.      FIDONEWS 13-45               Page 30                   4 Nov 1996
  1710.  
  1711.  
  1712.              4   4 | destNode (low order)  | destNode (high order) |
  1713.                    +-----------------------+-----------------------+
  1714.              6   6 | origNet (low order)   | origNet (high order)  |
  1715.                    +-----------------------+-----------------------+
  1716.              8   8 | destNet (low order)   | destNet (high order)  |
  1717.                    +-----------------------+-----------------------+
  1718.             10   A | Attribute (low order) | Attribute (high order)|
  1719.                    +-----------------------+-----------------------+
  1720.             12   C |   cost (low order)    |   cost (high order)   |
  1721.                    +-----------------------+-----------------------+
  1722.             14   E |                                               |
  1723.                    ~                    DateTime                   ~
  1724.                    |                    20 bytes                   |
  1725.                    +-----------------------+-----------------------+
  1726.             34  22 |                  toUserName                   |
  1727.                    ~                  max 36 bytes                 ~
  1728.                    |                null terminated                |
  1729.                    +-----------------------+-----------------------+
  1730.                    |                 fromUserName                  |
  1731.                    ~                  max 36 bytes                 ~
  1732.                    |                null terminated                |
  1733.                    +-----------------------+-----------------------+
  1734.                    |                    subject                    |
  1735.                    ~                  max 72 bytes                 ~
  1736.                    |                null terminated                |
  1737.                    +-----------------------+-----------------------+
  1738.                    |                      text                     |
  1739.                    ~                    unbounded                  ~
  1740.                    |                 null terminated               |
  1741.                    `-----------------------------------------------'
  1742.  
  1743.            Due  to routing, the origin and  destination net and node of a
  1744.            packet are  often quite different from  those of the messages
  1745.            within it,  nor need  the origin and destination nets and nodes
  1746.            of the messages within a packet be homogenous.
  1747.  
  1748.            PakdMessage  = 02H 00H           (* message type, old type-1
  1749.                                                obsolete *)
  1750.                           origNode          (* of message *)
  1751.                           destNode          (* of message *)
  1752.                           origNet           (* of message *)
  1753.                           destNet           (* of message *)
  1754.                           AttributeWord
  1755.                           cost              (* in lowest unit of
  1756.                                                originator's currency *)
  1757.                           DateTime          (* message body was last edited
  1758.                                                *)
  1759.                           toUserName{36}    (* Null terminated *)
  1760.                           fromUserName{36}  (* Null terminated *)
  1761.                           subject{72}       (* Null terminated *)
  1762.                           text{unbounded}   (* Null terminated *)
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.      FIDONEWS 13-45               Page 31                   4 Nov 1996
  1769.  
  1770.  
  1771.       2. Presentation Layer Protocol : a Mail Window
  1772.  
  1773.      .-----+----------+-------------------------+------------------------.
  1774.      |State| State    | Predicate(s)            | Action(s) | Next|      |
  1775.      |  #  | Name     |                         |           | St  |      |
  1776.      |-----+----------+-------------------------+-------------------------
  1777.         | W0 | WindTop  | 1 end of window reached
  1778.                         | reset modem to not answr
  1779.                         | exit|
  1780.         |     |         | 2 time remains in window| ensure modem can answer
  1781.         | W1  | |-----+----------+-------------------------+--------
  1782.         -----------------+-----|
  1783.         | W1  | WindIdle | 1 incoming call         |
  1784.         | W2  |
  1785.         |     |          | 2 receive-only mode     |
  1786.         | W0  |
  1787.         |     |          | 3 send-only mode        |
  1788.         | W3  |
  1789.         |     |          | 4 60-180 secs & no call |
  1790.         | W3  | |-----+----------+-------------------------+---------------
  1791.         ----------+-----|
  1792.         | W2* | WindRecv |                         | (receive call R0)
  1793.         | W3  | |-----+----------+-------------------------+---------------
  1794.         ----------+-----|
  1795.         | W3  | WindCall | 1 select outgoing call  | increment try count
  1796.         | W4  |
  1797.         |     |          | 2 no outgoing calls     |
  1798.         | W0  | |-----+----------+-------------------------+---------------
  1799.         ----------+-----|
  1800.         | W4* | WindSend |                         | (make call S0)
  1801.         | W5  | |-----+----------+-------------------------+---------------
  1802.         ----------+-----|
  1803.         | W5  | WindMark | 1 call successful       | remove node fr call
  1804.         list| W0  |
  1805.         |     |          | 2 no connect            | remove if try cnt >
  1806.         lim | W0  |
  1807.         |     |          | 3 call failed           | incr conn cnt, remove
  1808.         | W0  |
  1809.         |     |          |                         |   if con cnt > lim
  1810.         |     | `-----+----------+-------------------------+---------------
  1811.         ----------+-----'
  1812.  
  1813.  
  1814.          The  length of the inter-call delay time at W1.4 is not critical.
  1815.          It is important that this not be a constant, so two systems
  1816.          calling each other do  not incur infinite busy signals.
  1817.          Sophisticated implementations  may vary  the  inter-call delay
  1818.          depending  on number of calls to  be  made, window width, user
  1819.          specification, etc.
  1820.  
  1821.  
  1822.       D. Session Layer Protocol : Connecting to Another FidoNet Machine
  1823.  
  1824.          A session is a connection between two FidoNet machines.  It is
  1825.          currently assumed  to be over the  DDD telephone network via
  1826.          modems.  The  calling machine starts out as the sender and the
  1827.      FIDONEWS 13-45               Page 32                   4 Nov 1996
  1828.  
  1829.  
  1830.          called machine as the receiver.  The  pickup  feature is described
  1831.          by the sender and  receiver  changing roles  midway through the
  1832.          session, after the sender has transferred  the message  packet and
  1833.          any attached files.  Due to the lack of security  in the  pickup
  1834.          protocol (danger of pickup by a fake node), a change in  the
  1835.          protocol may be expected in the near future.
  1836.  
  1837.          Once  a connection has been established, each system should ensure
  1838.          that the  physical connection remains  throughout the session.
  1839.          For physical layers  implemented  through modems,  this means
  1840.          monitoring the  carrier detect signal, and terminating the session
  1841.          if it is lost.
  1842.  
  1843.          Error  detection at the physical layer should be monitored for
  1844.          both sent and  received  characters.  Parity,  framing, and other
  1845.          physical errors should be detected.
  1846.  
  1847.          Sender
  1848.  
  1849.         .-----+----------+-------------------------+-----------------------
  1850.      --+-----.
  1851.         |State| State    | Predicate(s)            | Action(s)
  1852.      | Next|
  1853.         |  #  | Name     |                         |
  1854.         | St  | |-----+----------+-------------------------+---------------
  1855.         ----------+-----|
  1856.         | S0  | SendInit |                         | dial modem
  1857.         | S1  | |-----+----------+-------------------------+---------------
  1858.         ----------+-----|
  1859.         | S1  | WaitCxD  | 1 carrier detected      | delay 1-5 seconds
  1860.         | S2  |
  1861.         |     |          | 2 busy, etc.            | report no connection
  1862.         | exit|
  1863.         |     |          | 3 voice                 | report no carrier
  1864.         | exit|
  1865.         |     |          | 4 carrier not detected  | report no connection
  1866.         | exit|
  1867.         |     |          |   within 60 seconds     |
  1868.         |     | |-----+----------+-------------------------+---------------
  1869.         ----------+-----|
  1870.         | S2  | WhackCRs | 1 over 30 seconds       | report no response
  1871.         <cr> | exit|
  1872.         |     |          | 2 ?? <cr>s received     | delay 1 sec
  1873.         | S3  |
  1874.         |     |          | 3 <cr>s not received    | send <cr> <sp> <cr>
  1875.         <sp>| S2  |
  1876.         |     |          |                         |   delay ??? secs
  1877.         |     | |-----+----------+-------------------------+---------------
  1878.         ----------+-----|
  1879.         | S3  | WaitClear| 1 no input for 0.5 secs | send TSYNCH = AEH
  1880.         | S4  |
  1881.         |     |          | 2 over 60 seconds       | hang up, report
  1882.         garbage | exit|
  1883.         |     |          |   and line not clear    |
  1884.         |     | |-----+----------+-------------------------+---------------
  1885.         ----------+-----| | S4* | TSyncChk | 1 'C' or NAK (peeked at)|
  1886.      FIDONEWS 13-45               Page 33                   4 Nov 1996
  1887.  
  1888.  
  1889.         (XMODEM send packet XS1)| S5  |
  1890.         |     |          | 2 over 2 seconds        | eat noise, resend
  1891.         TSYNCH| S4  |
  1892.         |     |          | 3 over 30 seconds       | hang up report not
  1893.         Fido | exit| |-----+----------+-------------------------+----------
  1894.         ---------------+-----|
  1895.         | S5  | CheckMail| 1 XMODEM successful     | (Fido registers
  1896.         success)| S6  |
  1897.         |     |          | 2 XMODEM fail or timeout| hang up, report mail
  1898.         bad| exit| |-----+----------+-------------------------+------------
  1899.         -------------+-----|
  1900.         | S6* | SendFiles|                         | (BATCH send files BS0)
  1901.         | S7  | |-----+----------+-------------------------+---------------
  1902.         ----------+-----|
  1903.         | S7  | CheckFile| 1 BATCH send successful |
  1904.         | S8  |
  1905.         |     |          | 2 BATCH send failed     | hang up, rept files
  1906.         fail| exit| |-----+----------+-------------------------+-----------
  1907.         --------------+-----|
  1908.         | S8  | TryPickup| 1 wish to pickup        | note send ok
  1909.         | R2* |
  1910.         |     |          | 2 no desire to pickup   | delay 5 secs
  1911.         | exit|
  1912.         |     |          |                         |   hang up, rept send
  1913.         ok |     | `-----+----------+-------------------------+------------
  1914.         -------------+-----'
  1915.  
  1916.          Although  the  above  shows  the  sender  emitting only one
  1917.          TSYNCH,  it is recommended  that a timeout of 5-20 seconds should
  1918.          initiate another TSYNCH.  The receiver should tolerate multiple
  1919.          TSYNCHs.
  1920.  
  1921.          In state S4, the phrase "peeked at" means that the character is
  1922.          not removed from the buffer.  Therefore when XS1 is started the
  1923.          proper character for beginning the Xmodem transfer will be
  1924.          detected.
  1925.  
  1926.         Receiver
  1927.  
  1928.          The  receiving FSM is given  an external timer, the expiration of
  1929.          which will cause termination with a result of 'no calls' (R0.2).
  1930.  
  1931.         .-----+----------+-------------------------+-----------------------
  1932.      --+-----.
  1933.         |State| State    | Predicate(s)            | Action(s)
  1934.      | Next|
  1935.         |  #  | Name     |                         |
  1936.         | St  | |-----+----------+-------------------------+---------------
  1937.         ----------+-----|
  1938.         | R0  | WaitCxD  | 1 carrier detected      |
  1939.         | R1  |
  1940.         |     |          | 2 external timer expires| report no calls
  1941.         | exit| |-----+----------+-------------------------+---------------
  1942.         ----------+-----|
  1943.         | R1  | WaitBaud | 1 baud rate detected    | send signon with <cr>s
  1944.         | R2  |
  1945.      FIDONEWS 13-45               Page 34                   4 Nov 1996
  1946.  
  1947.  
  1948.         |     |          | 2 no detect in ?? secs  | hang up, report no
  1949.         baud | exit| |-----+----------+-------------------------+----------
  1950.         ---------------+-----|
  1951.         | R2  | WaitTsync| 1 TSYNCH received       | ignore input not
  1952.         TSYNCH | R3  |
  1953.         |     |          | 2 60 seconds timeout    | hang up, report not
  1954.         Fido| exit| |-----+----------+-------------------------+-----------
  1955.         --------------+-----|
  1956.         | R3* | RecMail  |                         | (XMODEM rec packet
  1957.         XR0) | R4  | |-----+----------+-------------------------+----------
  1958.         ---------------+-----|
  1959.         | R4  | XRecEnd  | 1 XMODEM successful     | delay 1 second
  1960.         | R5  |
  1961.         |     |          |                         |   flush input
  1962.         |     |
  1963.         |     |          | 2 XMODEM failed         | hang up, rept mail
  1964.         fail | exit| |-----+----------+-------------------------+----------
  1965.         ---------------+-----|
  1966.         | R5* | RecFiles |                         | (BATCH rec files BR0)
  1967.         | R6  | |-----+----------+-------------------------+---------------
  1968.         ----------+-----|
  1969.         | R6  | ChkFiles | 1 BATCH recv successful | delay 2 secs
  1970.         | R7  |
  1971.         |     |          | 2 BATCH recv failed     | hang up, report bad
  1972.         file| exit| |-----+----------+-------------------------+-----------
  1973.         --------------+-----| | R7  | AllowPkup| 1 have pickup for sender|
  1974.         receiver becomes sender | S3* |
  1975.         |     |          | 2 nothing to pickup     | hang up, rept recv ok
  1976.         | exit| `-----+----------+-------------------------+---------------
  1977.         ----------+-----'
  1978.  
  1979.  
  1980.       E. Transport Layer : ?????
  1981.  
  1982.         1. Data Definitions
  1983.  
  1984.         2. Transport Layer Protocol : Routing
  1985.  
  1986.            FidoNet   does  not  necessarily  send  a  message  directly  to
  1987.            its destination.   To reduce the number of network connections,
  1988.            mail to  a subset  of  the  nodelist  may  be  routed  to one
  1989.            node for  further distribution  within  that  subset.   In
  1990.            addition, custom routing  is possible.  Routing of a message is
  1991.            determined in one of three ways.
  1992.  
  1993.            o If there are files attached, then a message must be sent
  1994.              directly to its destination.
  1995.  
  1996.            o Messages without attached files should be routed through the
  1997.              inbound host  of the destination  node's  subnet  as specified
  1998.              by a FidoNet format nodelist.
  1999.  
  2000.            o To prevent overloading of inbound hosts, a system should
  2001.              provide for host routing to be disabled for a target node, or
  2002.              nodes.
  2003.  
  2004.      FIDONEWS 13-45               Page 35                   4 Nov 1996
  2005.  
  2006.  
  2007.       F. Network Layer : the Network's View of the System, Routing and
  2008.          Packets
  2009.  
  2010.  
  2011.         1. Network Layer Data Definition : the Packet Header
  2012.  
  2013.            The  packet contains messages in packed format to be transferred
  2014.            over the  net during a connection.  As this data structure is
  2015.            transferred, its definition is critical to FidoNet.
  2016.  
  2017.            A  packet may contain zero or more packed messages.  A packet
  2018.            without messages is often generated as a poll packet.
  2019.  
  2020.            Every  packet begins with a  packet header.  The fields of the
  2021.            packet header are of fixed length.
  2022.  
  2023.  
  2024.                                      Packet Header
  2025.             Offset
  2026.            dec hex
  2027.                    .-----------------------------------------------.
  2028.              0   0 | origNode (low order)  | origNode (high order) |
  2029.                    +-----------------------+-----------------------+
  2030.              2   2 | destNode (low order)  | destNode (high order) |
  2031.                    +-----------------------+-----------------------+
  2032.              4   4 |   year (low order)    |   year (high order)   |
  2033.                    +-----------------------+-----------------------+
  2034.              6   6 |  month (low order)    |  month (high order)   |
  2035.                    +-----------------------+-----------------------+
  2036.              8   8 |   day (low order)     |   day (high order)    |
  2037.                    +-----------------------+-----------------------+
  2038.             10   A |   hour (low order)    |   hour (high order)   |
  2039.                    +-----------------------+-----------------------+
  2040.             12   C |  minute (low order)   |  minute (high order)  |
  2041.                    +-----------------------+-----------------------+
  2042.             14   E |  second (low order)   |  second (high order)  |
  2043.                    +-----------------------+-----------------------+
  2044.             16  10 |   baud (low order)    |   baud (high order)   |
  2045.                    +-----------------------+-----------------------+
  2046.             18  12 |    0     |     2      |    0      |    0      |
  2047.                    +-----------------------+-----------------------+
  2048.             20  14 | origNet (low order)   | origNet (high order)  |
  2049.                    +-----------------------+-----------------------+
  2050.             22  16 | destNet (low order)   | destNet (high order)  |
  2051.                    +-----------------------+-----------------------+
  2052.             24  18 |       prodCode        |       serialNo        |
  2053.                    +-----------------------+-----------------------+
  2054.             26  1A |                                               |
  2055.                    |             password   (some impls)           |
  2056.                    |                  eight bytes                  |
  2057.                    |                  null padded                  |
  2058.                    |                                               |
  2059.                    +-----------------------+-----------------------+
  2060.             34  22 | origZone (low) (opt)  | origZone (high) (opt) |
  2061.                    +-----------------------+-----------------------+
  2062.             36  24 | destZone (low) (opt)  | destZone (high) (opt) |
  2063.      FIDONEWS 13-45               Page 36                   4 Nov 1996
  2064.  
  2065.  
  2066.                    +-----------------------+-----------------------+
  2067.             38  26 |                     fill                      |
  2068.                    ~                   20 bytes                    ~
  2069.                    |                                               |
  2070.                    +-----------------------+-----------------------+
  2071.             58  3A |                 zero or more                  |
  2072.                    ~                    packed                     ~
  2073.                    |                   messages                    |
  2074.                    +-----------------------+-----------------------+
  2075.                    |    0     |     0      |    0     |     0      |
  2076.                    `-----------------------+-----------------------'
  2077.  
  2078.  
  2079.            Packet       = PacketHeader  { PakdMessage }  00H 00H
  2080.  
  2081.            PacketHeader = origNode   (* of packet, not of messages in
  2082.                                         packet *)
  2083.                           destNode   (* of packet, not of messages in
  2084.                                         packet *)
  2085.                           year       (* of packet creation, e.g. 1986 *)
  2086.                           month      (* of packet creation, 0-11 for Jan-
  2087.                                         Dec *)
  2088.                           day        (* of packet creation, 1-31 *)
  2089.                           hour       (* of packet creation, 0-23 *)
  2090.                           minute     (* of packet creation, 0-59 *)
  2091.                           second     (* of packet creation, 0-59 *)
  2092.                           baud       (* max baud rate of orig and dest,
  2093.                                         0=SEA *)
  2094.                           PacketType (* old type-1 packets now obsolete *)
  2095.                           origNet    (* of packet, not of messages in
  2096.                                         packet *)
  2097.                           destNet    (* of packet, not of messages in
  2098.                                         packet *)
  2099.                           prodCode   (* 0 for Fido, write to FTSC for
  2100.                                         others *)
  2101.                           serialNo   (* binary serial number (otherwise
  2102.                                         null)*)
  2103.                           password   (* session password  (otherwise null)
  2104.                                         *)
  2105.                           origZone   (* zone of pkt sender (otherwise null)
  2106.                                         *)
  2107.                           destZone   (* zone of pkt receiver (otherwise
  2108.                                         null)*)
  2109.                           fill[20]
  2110.  
  2111.            PacketType   = 02H 00H  (* 01H 00H was used by Fido versions
  2112.                                       before 10 which did not support local
  2113.                                       nets.  The packed message header was
  2114.                                       also different for those versions *)
  2115.  
  2116.            prodCode     = (  00H      (* Fido *)
  2117.                           |  ...
  2118.                           |  ??H      (* Please apply for new codes *)
  2119.                           )
  2120.  
  2121.  
  2122.      FIDONEWS 13-45               Page 37                   4 Nov 1996
  2123.  
  2124.  
  2125.            The  remainder of the packet consists of packed messages.  Each
  2126.            packed message  begins  with  a  message type word 0200H.   A
  2127.            pseudo-message beginning with the word 0000H signifies the end
  2128.            of the packet.
  2129.  
  2130.  
  2131.         2. Network Layer Data Description : a File with Attributes
  2132.  
  2133.            The  BATCH  protocol uses  the MODEM7 filename and TeLink/XMODEM
  2134.            file transfer protocols to transfer the file with attributes.
  2135.  
  2136.            When  a  file is transferred via  FidoNet, an attempt is made to
  2137.            also pass  the operating system's attributes  for the file such
  2138.            as  length, modification  date, etc.  FidoNet does this via a
  2139.            special prefix block to  the XMODEM file transfer using a
  2140.            protocol known as TeLink.  As the TeLink  protocol relies on a
  2141.            modification to the XMODEM file  transfer protocol, it is
  2142.            documented at the data link layer level.
  2143.  
  2144.            The  MODEM7 file name is redundant if there is also a TeLink
  2145.            block, in which case the name may be taken from either or both.
  2146.  
  2147.                                    FileName as Sent
  2148.             Offset
  2149.            dec hex
  2150.                    .-----------------------------------------------.
  2151.              0   0 |                   fileName                    |
  2152.                    ~                   8  bytes                    ~
  2153.                    |           left adjusted blank filled          |
  2154.                    +-----------------------+-----------------------+
  2155.              8   8 |                    fileExt                    |
  2156.                    ~                    3  bytes                   ~
  2157.                    |           left adjusted blank filled          |
  2158.                    `-----------------------------------------------'
  2159.  
  2160.  
  2161.       3. Network Layer Protocol : BATCH File Finite State Machines
  2162.  
  2163.  
  2164.          BATCH File Sender
  2165.  
  2166.         .-----+----------+-------------------------+-----------------------
  2167.      --+-----.
  2168.         |State| State    | Predicate(s)            | Action(s)
  2169.      | Next|
  2170.         |  #  | Name     |                         |
  2171.         | St  | |-----+----------+-------------------------+---------------
  2172.         ----------+-----|
  2173.         | BS0*| MoreFiles| 1 more files to send    | (MODEM7 FName send
  2174.         MS0) | BS1 |
  2175.         |     |          | 2 no more files to send |
  2176.         | BS3 | |-----+----------+-------------------------+---------------
  2177.         ----------+-----|
  2178.         | BS1 | CheckFNm | 1 MODEM7 Filename ok    | (TeLink send file XS0)
  2179.         | BS2 |
  2180.         |     |          | 2 MODEM7 Filename bad   | report name send bad
  2181.      FIDONEWS 13-45               Page 38                   4 Nov 1996
  2182.  
  2183.  
  2184.         | exit| |-----+----------+-------------------------+---------------
  2185.         ----------+-----|
  2186.         | BS2 | CheckFile| 1 TeLink send ok        |
  2187.         | BS0 |
  2188.         |     |          | 2 TeLink send bad       | report file send bad
  2189.         | exit| |-----+----------+-------------------------+---------------
  2190.         ----------+-----| | BS3 | EndSend  | 1 rec NAK for next file | send
  2191.         EOT, report send ok| exit|
  2192.         |     |          | 2 10 seconds no NAK     | send EOT, report no
  2193.         NAK | exit| `-----+----------+-------------------------+-----------
  2194.         --------------+-----'
  2195.  
  2196.          When  no files remain, the sender responds to the receiver's NAK
  2197.          with an EOT.  The EOT is not ACK/NAKed by the receiver.
  2198.  
  2199.          Filenames  must be upper case ASCII.  The data link layer uses "u"
  2200.          as  a control character.
  2201.  
  2202.  
  2203.          BATCH File Receiver
  2204.  
  2205.         .-----+----------+-------------------------+-----------------------
  2206.      --+-----.
  2207.         |State| State    | Predicate(s)            | Action(s)
  2208.      | Next|
  2209.         |  #  | Name     |                         |
  2210.         | St  | |-----+----------+-------------------------+---------------
  2211.         ----------+-----|
  2212.         | BR0*| RecvName |                         | (MODEM7 FName recv
  2213.         MR0) | BR1 | |-----+----------+-------------------------+----------
  2214.         ---------------+-----|
  2215.         | BR1 | CheckFNm | 1 MODEM7 no more files  | report files recd ok
  2216.         | exit|
  2217.         |     |          | 2 MODEM7 Filename ok    | (TeLink recv file XR0)
  2218.         | BR2 |
  2219.         |     |          | 2 MODEM7 Filename bad   | report name recv bad
  2220.         | exit| |-----+----------+-------------------------+---------------
  2221.         ----------+-----|
  2222.         | BR2 | CheckFile| 1 TeLink recv ok        |
  2223.         | BR0 |
  2224.         |     |          | 2 TeLink recv bad       | report file recv bad
  2225.         | exit| `-----+----------+-------------------------+---------------
  2226.         ----------+-----'
  2227.  
  2228.  
  2229.       G. Data Link Layer : Error-Free Data Transfer
  2230.  
  2231.         1. Data Link Layer Data Definition : XMODEM/TeLink Blocks
  2232.  
  2233.            XMODEM  transfers  are  in  blocks  of 128  uninterpreted  data
  2234.            bytes preceded  by  a three  byte header  and followed by either
  2235.            a one  byte checksum  or a two byte crc remainder.  XMODEM makes
  2236.            no provision  for data  streams  which  are  not  an  integral
  2237.            number  of  blocks  long.  Therefore,  the sender pads streams
  2238.            whose length is not a multiple  of 128 bytes with the end-of-
  2239.            file character (^Z for MS-DOS), and use some other  means  to
  2240.      FIDONEWS 13-45               Page 39                   4 Nov 1996
  2241.  
  2242.  
  2243.            convey  the  true data length to the receiver  (e.g.  TeLink
  2244.            file info block).
  2245.  
  2246.            Data blocks contain sequence numbers so the receiver can ensure
  2247.            it has the  correct block.  Block  numbers are sequential
  2248.            unsigned eight  bit integers  beginning with 01H and wrapping to
  2249.            00H, except that a TeLink block is given sequence number 00H.
  2250.  
  2251.            For  files which are attached to the mail packet, not the mail
  2252.            packet itself,  if the sending system is aware of the file
  2253.            attributes as they are  known to the operating system, then the
  2254.            first block of the XMODEM transfer  may be a special TeLink
  2255.            block to transfer that information.  This  block  differs  in
  2256.            that  the  first byte is a SYN  character  as opposed  to an
  2257.            SOH, and it is always sent checksum as opposed to CRC.  Should
  2258.            the receiver be unwilling to handle such information, after two
  2259.            NAKs (or "C"s), the sender skips this special block and goes on
  2260.            to the data itself.
  2261.  
  2262.  
  2263.  
  2264.                              XMODEM Data Block (CRC mode)
  2265.             Offset
  2266.            dec hex
  2267.                    .-----------------------------------------------.
  2268.              0   0 |        SOH  -  Start Of Header -  01H         |
  2269.                    +-----------------------------------------------+
  2270.              1   1 |                 BlockNumber                   |
  2271.                    +-----------------------------------------------+
  2272.              2   2 |               BlockComplement                 |
  2273.                    +-----------------------------------------------+
  2274.              3   3 |                128 bytes  of                  |
  2275.                    ~                uninterpreted                  ~
  2276.                    |                    data                       |
  2277.                    +-----------------------------------------------+
  2278.            131  83 |             CRC high order byte               |
  2279.                    +-----------------------------------------------+
  2280.            132  84 |             CRC  low order byte               |
  2281.                    `-----------------------------------------------'
  2282.  
  2283.  
  2284.  
  2285.                            XMODEM Data Block (Checksum mode)
  2286.             Offset
  2287.            dec hex
  2288.                    .-----------------------------------------------.
  2289.              0   0 |        SOH  -  Start Of Header -  01H         |
  2290.                    +-----------------------------------------------+
  2291.              1   1 |                 BlockNumber                   |
  2292.                    +-----------------------------------------------+
  2293.              2   2 |               BlockComplement                 |
  2294.                    +-----------------------------------------------+
  2295.              3   3 |                128 bytes  of                  |
  2296.                    ~                uninterpreted                  ~
  2297.                    |                    data                       |
  2298.                    +-----------------------------------------------+
  2299.      FIDONEWS 13-45               Page 40                   4 Nov 1996
  2300.  
  2301.  
  2302.            131  83 |                Checksum byte                  |
  2303.                    `-----------------------------------------------'
  2304.  
  2305.  
  2306.                             TeLink File Descriptor Block
  2307.             Offset
  2308.            dec hex
  2309.                    .-----------------------------------------------.
  2310.              0   0 |       SYN  -  File Info Header -  16H         |
  2311.                    +-----------------------------------------------+
  2312.              1   1 |                     00H                       |
  2313.                    +-----------------------------------------------+ data
  2314.      offset
  2315.              2   2 |                     FFH                       | dec
  2316.      hex           +-----------------------------------------------+
  2317.              3   3 |     File Length, least significant byte       |  0
  2318.                  0 +-----------------------------------------------+
  2319.              4   4 | File Length, second to least significant byte |  1
  2320.                    1 +-----------------------------------------------+
  2321.              5   5 |  File Length, second to most significant byte |  2
  2322.                    2 +-----------------------------------------------+
  2323.              6   6 |      File Length, most significant byte       |  3
  2324.                    3 +-----------------------------------------------+
  2325.              7   7 |            Creation Time of File              |  4
  2326.      4
  2327.                    |                "DOS Format"                   |
  2328.                    +-----------------------------------------------+
  2329.              9   9 |            Creation Date of File              |  6
  2330.      6
  2331.                    |                "DOS Format"                   |
  2332.                    +-----------------------------------------------+
  2333.             11   B |                 File  Name                    |  8
  2334.      8
  2335.                    ~                  16 chars                     ~
  2336.                    |        left justified  blank filled           |
  2337.                    +-----------------------------------------------+
  2338.             27  1B |                    00H                        | 24
  2339.                    18 +-----------------------------------------------+
  2340.             28  1C |            Sending Program Name               | 25
  2341.      19
  2342.                    ~                  16 chars                     ~
  2343.                    |         left justified  Null filled           |
  2344.                    +-----------------------------------------------+
  2345.             44  2C |            01H (for CRC) or 00H               | 41
  2346.                    29 +-----------------------------------------------+
  2347.             45  2D |                    fill                       | 42
  2348.      2A
  2349.                    ~                  86 bytes                     ~
  2350.                    |                  all zero                     |
  2351.                    +-----------------------------------------------+
  2352.            132  84 |                Checksum byte                  |
  2353.                    `-----------------------------------------------'
  2354.  
  2355.  
  2356.  
  2357.            XMODEMData   = XMODEMBlock      (* block of data with header and
  2358.      FIDONEWS 13-45               Page 41                   4 Nov 1996
  2359.  
  2360.  
  2361.                                               trailer *)
  2362.                           | TeLinkBlock    (* TeLink File Descriptor Block
  2363.                                               *)
  2364.                           | ACK            (* acknowledge data received ok
  2365.                                               *)
  2366.                           | NAK            (* negative ACK & poll 1st block
  2367.                                               *)
  2368.                           | EOT            (* end of xfer, after last block
  2369.                                               *)
  2370.                           | "C"            (* 43H *)
  2371.  
  2372.            XMODEMBlock  = SOH              (* Start of Header, XMODEM Block
  2373.                                               *)
  2374.                           blockNumber[1]   (* sequence, i'=mod( i+1, 256 )
  2375.                                               *)
  2376.                           blockCompl[1]    (* one's compl of BlockNumber *)
  2377.                           data[128]        (* uninterpreted user data block
  2378.                                               *)
  2379.                           (CRC | Checksum) (* error detect/correction code
  2380.                                               *)
  2381.  
  2382.            TeLinkBlock  = SYN              (* File Info Header *)
  2383.                           00H              (* block no, must be first block
  2384.                                               *)
  2385.                           FFH              (* one's complement of block no
  2386.                                               *)
  2387.                           fileLength[4]    (* length of data in bytes *)
  2388.                           CreationTime[2]  (* time file last modified or
  2389.                                               zero *)
  2390.                           CreationDate[2]  (* date file last modified or
  2391.                                               zero *)
  2392.                           fileName(16)     (* name of file, not vol or dir
  2393.                                               *)
  2394.                           00H              (* header version number *)
  2395.                           sendingProg(16)  (* name of program on send side
  2396.                                               *)
  2397.                           crcMode[1]       (* 01H for CRC 00H for Checksum
  2398.                                               *)
  2399.                           fill[87]         (* zeroed *)
  2400.                           Checksum         (* error detect/correction code
  2401.                                               *)
  2402.  
  2403.            ACK          = 06H              (* acknowledge data received ok
  2404.                                               *)
  2405.            NAK          = 15H              (* negative ACK & poll 1st block
  2406.                                               *)
  2407.            SOH          = 01H              (* start of header, begins block
  2408.                                               *)
  2409.            SYN          = 16H              (* start of TeLink file info blk
  2410.                                               *)
  2411.            EOT          = 04H              (* end of xfer, after last block
  2412.                                               *)
  2413.            CRC          = crc[2]           (* CCITT Cyclic Redundancy Check
  2414.                                               *)
  2415.            Checksum     = checksum[1]      (* low 8 bits of sum of data
  2416.                                               bytes using unsigned 8 bit
  2417.      FIDONEWS 13-45               Page 42                   4 Nov 1996
  2418.  
  2419.  
  2420.                                               arithmetic *)
  2421.            CreationDate = year[.7]         (* 7 bits, years since 1980, 0-
  2422.                                               127  *)
  2423.                           month[.4]        (* 4 bits, month of year, 1-12
  2424.                                               *)
  2425.                           day[.5]          (* 5 bits, day of month, 1-31 *)
  2426.  
  2427.            CreationTime = hour[.5]         (* 5 bits, hour of day, 0-23 *)
  2428.                           minute[.6]       (* 6 bits, minute of hour, 0-60
  2429.                                               *)
  2430.                           biSeconds[.2]    (* 6 bits, seconds/2, 0-29 *)
  2431.  
  2432.  
  2433.            Note  that the crcMode is always set to 01H in current
  2434.            implementations as  all TeLink/XMODEM implementations use the
  2435.            CRC method.  Therefore, it is always set to 01H by the sender,
  2436.            and is ignored by the receiver.
  2437.  
  2438.  
  2439.       2. Data Link Layer Protocol : XMODEM/TeLink Finite State Machines
  2440.  
  2441.          The  protocol is receiver driven, the receiver polling the sender
  2442.          for each  block.   If the receiver polls  for the first block
  2443.          using a "C" (43H)  as  the poll character,  it would prefer to
  2444.          have the  CRC-CCITT polynomial  remainder error detection code at
  2445.          the end of each block as opposed  to a one byte unsigned checksum.
  2446.          The sender will respond  to the  "C"  poll iff it can  comply.  If
  2447.          the sender chooses checksum as opposed  to  CRC, it waits for  the
  2448.          receiver to poll with  NAK (15H).  Should  the  checksum method be
  2449.          preferable to the receiver, it  polls with NAK rather than "C".
  2450.  
  2451.          The sender returns an EOT instead of a data block when no data
  2452.          remain.
  2453.  
  2454.          Neither  the  sender nor the  receiver should send the block or
  2455.          ACK/NAK response  while there is data being received.  They should
  2456.          wait for  the line to settle, and possibly time out.
  2457.  
  2458.          It  is  suggested that one's  input buffer be cleared immediately
  2459.          after sending  block or ACK/NAK response, before waiting for the
  2460.          response from the  other  end.  This  clears  any line garbage
  2461.          which  occurred during transmit.
  2462.  
  2463.  
  2464.          XMODEM/TeLink Sender
  2465.  
  2466.         .-----+----------+-------------------------+-----------------------
  2467.      --+-----.
  2468.         |State| State    | Predicate(s)            | Action(s)
  2469.      | Next|
  2470.         |  #  | Name     |                         |
  2471.         | St  | |-----+----------+-------------------------+---------------
  2472.         ----------+-----|
  2473.         | XS0 | WaitTeLnk| 1 over 40-60 seconds    | report sender timeout
  2474.         | exit|
  2475.         |     |          | 2 over 2 tries          | note TeLink block
  2476.      FIDONEWS 13-45               Page 43                   4 Nov 1996
  2477.  
  2478.  
  2479.         failed| XS1 |
  2480.         |     |          | 3 NAK or "C" received   | send TeLink, incr
  2481.         tries | XS0 |
  2482.         |     |          | 4 ACK received          | TeLink ok, set
  2483.         crc/cksm | XS2 | |-----+----------+-------------------------+------
  2484.         -------------------+-----|
  2485.         | XS1 | WaitStart| 1 over 40-60 seconds    | report sender timeout
  2486.         | exit|
  2487.         |     |          | 2 over 20 tries         | report send failed
  2488.         | exit|
  2489.         |     |          | 3 NAK received          | set checksum mode
  2490.         | XS2 |
  2491.         |     |          | 4 "C" recd, I can crc   | set crc mode
  2492.         | XS2 |
  2493.         |     |          | 5 "C" recd, I can't crc |
  2494.         | XS1 | |-----+----------+-------------------------+---------------
  2495.         ----------+-----|
  2496.         | XS2 | SendBlock| 1 more data available   | send next data block
  2497.         | XS3 |
  2498.         |     |          |                         |   as checksum or crc
  2499.         |     |
  2500.         |     |          | 2 last block has gone   | send EOT
  2501.         | XS4 | |-----+----------+-------------------------+---------------
  2502.         ----------+-----|
  2503.         | XS3 | WaitACK  | 1 10 retries or 1 minute| report send failed
  2504.         | exit|
  2505.         |     |          | 2 ACK received          |
  2506.         | XS2 |
  2507.         |     |          | 3 NAK (or C if 1st blk) | resend last block
  2508.         | XS3 | |-----+----------+-------------------------+---------------
  2509.         ----------+-----|
  2510.         | XS4 | WaitEnd  | 1 10 retries or 1 minute| report send failed
  2511.         | exit|
  2512.         |     |          | 2 ACK received          | report send successful
  2513.         | exit|
  2514.         |     |          | 3 NAK received          | resend EOT
  2515.         | XS4 | `-----+----------+-------------------------+---------------
  2516.         ----------+-----'
  2517.  
  2518.  
  2519.          XMODEM/TeLink Receiver
  2520.  
  2521.         .-----+----------+-------------------------+-----------------------
  2522.      --+-----.
  2523.         |State| State    | Predicate(s)            | Action(s)
  2524.      | Next|
  2525.         |  #  | Name     |                         |
  2526.         | St  | |-----+----------+-------------------------+---------------
  2527.         ----------+-----|
  2528.         | XR0 | RecStart | 1 prefer crc mode       | Send "C"
  2529.         | XR1 |
  2530.         |     |          | 2 want checksum mode    | send NAK
  2531.         | XR1 | |-----+----------+-------------------------+---------------
  2532.         ----------+-----| | XR1 | WaitFirst| 1 10 retries or 1 minute|
  2533.         report receive failure  | exit|
  2534.         |     |          | 2 > 3 retries or 30 secs| set want checksum mode
  2535.      FIDONEWS 13-45               Page 44                   4 Nov 1996
  2536.  
  2537.  
  2538.         | XR0 |
  2539.         |     |          | 3 EOT received          | delay < sec, purge
  2540.         input| exit|
  2541.         |     |          |                         | send ACK, report no
  2542.         file|     |
  2543.         |     |          | 4 TeLink block recd     | send ACK, set crc/cksm
  2544.         | XR2 |
  2545.         |     |          | 5 data block recd       | send ACK, set crc/cksm
  2546.         | XR2 |
  2547.         |     |          | 6 bad block or 2-10 secs| incr retry count
  2548.         | XR0 | |-----+----------+-------------------------+---------------
  2549.         ----------+-----| | XR2 | WaitBlock| 1 10 retries or 1 minute|
  2550.         report receive failure  | exit|
  2551.         |     |          | 2 EOT received          | send ACK, report recd
  2552.         ok| exit|
  2553.         |     |          |                         | send ACK, report recd
  2554.         ok|     |
  2555.         |     |          | 3 data block received   | send ACK
  2556.         | XR2 |
  2557.         |     |          | 4 bad block or 2-10 secs| send NAK, incr retry
  2558.         cnt| XR2 | `-----+----------+-------------------------+------------
  2559.         -------------+-----'
  2560.  
  2561.  
  2562.          A  number of checks should be made to ensure a valid data block
  2563.          has been received.
  2564.  
  2565.          o  The  physical  layer  should  have encountered no errors,  e.g.
  2566.             parity, framing, etc.
  2567.  
  2568.          o  The length of the block should not be less than expected.
  2569.  
  2570.          o  If  the blocks sequence  number does not match the  complement,
  2571.             then respond with a NAK and attempt to read the block again.
  2572.  
  2573.          o  If the block's sequence number is one previous (remember wrap
  2574.             around) to that of the expected block, respond with an ACK and
  2575.             read again.
  2576.  
  2577.          o  If the sequence number fits neither of the above criteria, and
  2578.             is yet not the expected sequence number, abort the receive.
  2579.  
  2580.          o  The checksum or CRC should be correct.
  2581.  
  2582.  
  2583.  
  2584.       3. Data Link Layer Protocol : MODEM7 Filename Finite State Machines
  2585.  
  2586.  
  2587.          MODEM7 Filename Sender
  2588.  
  2589.         .-----+----------+-------------------------+-----------------------
  2590.      --+-----.
  2591.         |State| State    | Predicate(s)            | Action(s)
  2592.      | Next|
  2593.         |  #  | Name     |                         |
  2594.      FIDONEWS 13-45               Page 45                   4 Nov 1996
  2595.  
  2596.  
  2597.         |  St | |-----+----------+-------------------------+---------------
  2598.         ----------+-----|
  2599.         | MS0 | WaitNak  | 1 20 retries or 1 minute| filename send failed
  2600.         | exit|
  2601.         |     |          | 2 NAK received          | send ACK & 1st ch of
  2602.         fn | MS1 |
  2603.         |     | (note 1) | 3 C received            | return fn skipped
  2604.         | exit| |-----+----------+-------------------------+---------------
  2605.         ----------+-----|
  2606.         | MS1 | WaitChAck| 1 ACK rcd, fname done   | send SUB = 1AH
  2607.         | MS2 |
  2608.         |     |          | 2 ACK rcd, fname ~done  | send next ch of fname
  2609.         | MS1 |
  2610.         |     |          | 3 other char or 1 sec   | send "u", incr retry
  2611.         cnt| MS0 | |-----+----------+-------------------------+------------
  2612.         -------------+-----|
  2613.         | MS2 | WaitCksm | 1 cksum recd and ok     | send ACK, report fn ok
  2614.         | exit|
  2615.         |     |          | 2 cksum recd but bad    | send "u", incr retry
  2616.         cnt| MS0 |
  2617.         |     |          | 3 no cksum in 1 sec     | send "u", incr retry
  2618.         cnt| MS0 | `-----+----------+-------------------------+------------
  2619.         -------------+-----'
  2620.  
  2621.  
  2622.          MODEM7 Filename Receiver
  2623.  
  2624.         .-----+----------+-------------------------+-----------------------
  2625.      --+-----.
  2626.         |State| State    | Predicate(s)            | Action(s)
  2627.      | Next|
  2628.         |  #  | Name     |                         |
  2629.         |  St | |-----+----------+-------------------------+---------------
  2630.         ----------+-----| | MR0 | SendNak  | 1 20 tries or 1 minute  |
  2631.         report filename failure | exit|
  2632.         |     |          | 2                       | send NAK, incr try cnt
  2633.         | MR1 | |-----+----------+-------------------------+---------------
  2634.         ----------+-----|
  2635.         | MR1 | WaitAck  | 1 rcd ACK               |
  2636.         | MR2 |
  2637.         |     |          | 2 rcd EOT               | report no files remain
  2638.         | exit|
  2639.         |     |          | 3 5 secs & no ACK/EOT   |
  2640.         | MR0 | |-----+----------+-------------------------+---------------
  2641.         ----------+-----| | MR2 | WaitChar | 1 recd EOT (can happen?)|
  2642.         report no files remain  | exit|
  2643.         |     |          | 2 recd SUB              | send checksum byte
  2644.         | MR3 |
  2645.         |     |          | 3 recd "u"              |
  2646.         | MR0 |
  2647.         |     |          | 4 recd char of name     | send ACK
  2648.         | MR2 |
  2649.         |     |          | 5 no char in 1 second   |
  2650.         | MR0 | |-----+----------+-------------------------+---------------
  2651.         ----------+-----| | MR3 | WaitOkCk | 1 recd ACK within 1 sec |
  2652.         report recd filename ok | exit|
  2653.      FIDONEWS 13-45               Page 46                   4 Nov 1996
  2654.  
  2655.  
  2656.         |     |          | 2 recd "u" or other char|
  2657.         | MR0 | `-----+----------+-------------------------+---------------
  2658.         ----------+-----'
  2659.  
  2660.          SUB  is the ASCII character ^Z or 1AH.  The checksum is the
  2661.          unsigned low order eight bits of the sum of the characters in the
  2662.          transferred filename including the SUB.
  2663.  
  2664.          Although  one second timeouts are used successfully by Fido and
  2665.          SEAdog, some fear that this is too small a timeout for some
  2666.          satellite and packet network links.
  2667.  
  2668.          Note 1 - MS0.3 is a common addition to accommodate a common
  2669.                   noncompliance.  Support of MS0.3 is optional for a
  2670.                   compliant mailer.  This hack also requires modification
  2671.                   of a number of state tables, see FSC-0011.
  2672.  
  2673.  
  2674.       H. Physical Layer : the Actual Connection of Two FidoNet Systems
  2675.  
  2676.          Will  one of the more hardware-oriented comm types give me some
  2677.          idea  of what's needed here?  Can we leave it open enough to allow
  2678.          implementation over a non-dial net?  Thanks.
  2679.  
  2680.  
  2681.       I. Revisions since FTS-0001
  2682.  
  2683.          89 Oct 25 (rev 13)
  2684.            o packet header: optional serialNo, password, and orig/dest zone
  2685.            o stored message to/from zone/point info added as option per
  2686.              Fido-12 and Dutchie
  2687.            o XR1 and XR2 changes per FSC-0011
  2688.            o reference to FSC-0011 for the MODEM7-avoidance hack, MS0.3
  2689.            o dropped enumeration of product codes
  2690.            o S4 modification from FSC-0011
  2691.            o Nodelist and EID reference appropriate documents
  2692.            o various cosmetics
  2693.          90 July 1-5 (rev 14)
  2694.            o spelling errors caught by Ray Gardner
  2695.            o references to the now dead IFNA elided
  2696.            o offset at end of Packed Message was 10 as opposed to 20 bytes
  2697.            o Packed Message and Packet Header corrections by Roland
  2698.              Gautschi
  2699.            o Offsets in TeLink header caught by Rick Moore
  2700.          90 August 30 (rev 15)
  2701.            o corrected offsets in packet header
  2702.          95 September 30 (rev 16)
  2703.            o TOPT corrected
  2704.            o contact info changed
  2705.  
  2706.  
  2707.       J. Acknowledgements
  2708.  
  2709.          Ben  Baker,  Thom  Henderson,  Tom  Jennings,  Ken Kaplan, and
  2710.          Gee Wong suggested, informed,  reviewed, and  encouraged.   Tom
  2711.          and Thom gave me all the basics, and even allowed me to look at
  2712.      FIDONEWS 13-45               Page 47                   4 Nov 1996
  2713.  
  2714.  
  2715.          actual code.  Bob Hartman was  foolish  enough  to implement  the
  2716.          specification, and was generous with useful feedback.  Ray
  2717.          Gardner caught  my  spelling errors <blush>, and Roland Gautschi
  2718.          and Rick Moore found offset and length errors.
  2719.  
  2720.          My employer, Pacific Systems Group was kind enough to donate my
  2721.          time to research and to write this document.
  2722.  
  2723.          Fido and FidoNet are registered trademarks of Tom Jennings.
  2724.  
  2725.          SEAdog is a trademark of System Enhancement Associates.
  2726.  
  2727.  
  2728.       K. Bibliography
  2729.  
  2730.          Documentation  for the protocols  and data formats are scattered.
  2731.          Some are  unattributed, some even untitled.
  2732.  
  2733.          Anonymous, changes to MODEM to implement CRC option  XMDM-CRC.TXT
  2734.  
  2735.          Baker, Ken and Moore, Rick, Nodelist Definition, currently FTS-
  2736.          0005
  2737.  
  2738.          Christensen, Ward, "MODEM Protocol Overview" of 1 January 82
  2739.          XMODEM.TXT
  2740.  
  2741.          Hartman, Bob, "Some thoughts that I had on FSC001", FSC-0011
  2742.  
  2743.          Henderson, Thom, "SEAdog Electronic Mail System Version 3" of
  2744.          April 86
  2745.  
  2746.          International  Standards Organization,  "Data Processing - Open
  2747.          Systems Interconnection - Basic Reference Model"  ISO/DIS 7498
  2748.          April 82
  2749.  
  2750.          Jennings,   Tom,  "FidoNet  Electronic  Mail  Protocol"  8
  2751.          February  85 FIDOMAIL.DOC
  2752.  
  2753.          Jennings,   Tom,  "Fido's  Internal  Structures"  of  13
  2754.          September  85 STRUCT.TXT aka STRUCT.APX
  2755.  
  2756.          Jennings, Tom, "Extending XMODEM/MODEM File Transfer Protocol to
  2757.          support DOS" 20 September 83   FILEXFER.DOC
  2758.  
  2759.          Jordan, Larry, "XMODEM File Transfer Protocol"  XMDM-LJ.TXT
  2760.  
  2761.          Rudin,   H   and   West,  C,  "Protocol  Specification,   Testing,
  2762.          and Verification,  III" Proceedings of  the IFIP WG 6.1 Third
  2763.          International Workshop   on   Protocol  Specification,  Testing,
  2764.          and Verification, Rueschlikon Switzerland 31 May - 2 June 1983.
  2765.  
  2766.          Tanenbaum, Andrew, "Computer Networks" Prentice Hall 1981
  2767.  
  2768.          Messages generated by Fido 11w, SEAdog 3.8, and QMail 1.01
  2769.  
  2770.      -----------------------------------------------------------------
  2771.      FIDONEWS 13-45               Page 48                   4 Nov 1996
  2772.  
  2773.  
  2774.      =================================================================
  2775.                             COORDINATORS CORNER
  2776.      =================================================================
  2777.  
  2778.  
  2779.      Nodelist-statistics as seen from Zone-2 for day 306
  2780.      By Ward Dossche, 2:292/854
  2781.         ZC/2
  2782.  
  2783.       +----+------+------------+------------+------------+------------+--+
  2784.       |Zone|Nl-278|Nodelist-285|Nodelist-292|Nodelist-299|Nodelist-306|%%|
  2785.       +----+------+------------+------------+------------+------------+--+
  2786.       |  1 | 11826|11666  -160 |11666     0 |11555  -111 |11332  -223 |37|
  2787.       |  2 | 16394|16341   -53 |16356    15 |16324   -32 |16307   -17 |54|
  2788.       |  3 |   951|  950    -1 |  956     6 |  954    -2 |  954     0 | 3|
  2789.       |  4 |   629|  610   -19 |  620    10 |  620     0 |  624     4 | 2|
  2790.       |  5 |   100|   97    -3 |   97     0 |   97     0 |   95    -2 | 0|
  2791.       |  6 |  1020| 1022     2 | 1020    -2 | 1020     0 | 1007   -13 | 3|
  2792.       +----+------+------------+------------+------------+------------+--+
  2793.            | 30920|30686  -234 |30715    29 |30570  -145 |30319  -251 |
  2794.            +------+------------+------------+------------+------------+
  2795.  
  2796.      -----------------------------------------------------------------
  2797.  
  2798.      FIDONEWS 13-45               Page 49                   4 Nov 1996
  2799.  
  2800.  
  2801.      =================================================================
  2802.                                  NET HUMOR
  2803.      =================================================================
  2804.  
  2805.  
  2806.      From: "Mike Riddle" <mriddle@novia.net>
  2807.      To: "Baker, Christopher" <cbaker84@digital.net (Christopher Baker)>
  2808.      Date: Fri, 01 Nov 96 11:24:17 -0500
  2809.      Reply-To: "Mike Riddle" <mriddle@novia.net>
  2810.      Subject: Re: Conmputer people...
  2811.  
  2812.      On Fri, 1 Nov 1996 09:39:52 -0600 (CST), Terry Begley, Information
  2813.      Technology Coordinator wrote:
  2814.  
  2815.      Date: Fri, 1 Nov 1996 09:12:54 EST
  2816.      From: Alex Demenschonok <alexd@WARD-ASSOCIATES.COM>
  2817.      To: WINNT-L@eva.dc.LSOFT.COM
  2818.      Subject: Re: smtp/pop3/dns server for WNT
  2819.  
  2820.      On  1 Nov 96 at 8:35, Michael A. Mandel wrote:
  2821.  
  2822.      > A normal person being what?  A non-computer systems expert?  I'm not
  2823.      > sure if that means we're better than "normal persons", but if it is,
  2824.      > hey that's o.k. too!
  2825.  
  2826.      hi,
  2827.  
  2828.      i think he means following :-) ....
  2829.  
  2830.       Computer experts consider themselves well dressed if their socks
  2831.       match.
  2832.  
  2833.       Computer experts buy their spouses a set of matched screwdrivers for
  2834.       their birthday.
  2835.  
  2836.       Computer experts wear moustaches or beards for "efficiency". Not
  2837.       because they're lazy.
  2838.  
  2839.       Computer experts have a non-technical vocabulary of 800 words.
  2840.  
  2841.       Computer experts think a "biting wit" is their fox terrier.
  2842.  
  2843.       Computer experts repair their own cameras, telephones, televisions,
  2844.       watches, and automatic transmissions.
  2845.  
  2846.       Computer experts say "It's 70 degrees Fahrenheit, 25 degrees Celsius,
  2847.       and 298 degrees Kelvin" and all you say is "Isn't it a nice day"
  2848.  
  2849.       Computer experts give you the feeling you're having a conversation
  2850.       with a dial tone or busy signal.
  2851.  
  2852.       Computer experts wear badges so they don't forget who they
  2853.       are. Sometimes a note is attached saying "Don't offer me a ride
  2854.       today. I drove my own car".
  2855.  
  2856.       Computer experts' politics run towards acquiring a parking space with
  2857.      FIDONEWS 13-45               Page 50                   4 Nov 1996
  2858.  
  2859.  
  2860.       their name on it and an office with a window.
  2861.  
  2862.       Computer experts know the "ABC's of Infrared" from A to B.
  2863.  
  2864.       Computer experts rotate their tires for laughs.
  2865.  
  2866.       Computer experts' briefcases contain a Phillips screwdriver, a copy
  2867.       of "C/C++", and a half of a peanut butter sandwich.
  2868.  
  2869.       Computer experts don't find the above at all funny.
  2870.  
  2871.      Cheers !
  2872.  
  2873.      -----
  2874.                  Terry Begley, Information Technology Coordinator
  2875.              Creighton University, College of Business Administration
  2876.                2500 California Plaza   Omaha, NE  68178  USA, Earth
  2877.             tbegley@creighton.edu  402.280.2619  http://eden.creighton.edu
  2878.  
  2879.                    Member of the NonSequitur society.  Our motto:
  2880.            "We don't have regular meetings, but isn't blue a nice color?"
  2881.  
  2882.      -----------------------------------------------------------------
  2883.  
  2884.      FIDONEWS 13-45               Page 51                   4 Nov 1996
  2885.  
  2886.  
  2887.      =================================================================
  2888.                                   NOTICES
  2889.      =================================================================
  2890.  
  2891.                                 Future History
  2892.  
  2893.       5 Nov 1996
  2894.         Election day, U.S.A.
  2895.  
  2896.       5 Nov 1996
  2897.         Guy Fawkes Day, England.
  2898.  
  2899.       1 Dec 1996
  2900.         Twelfth Anniversary of FidoNews Volume 1, Issue 1.
  2901.  
  2902.      12 Dec 1996
  2903.         Constitution Day, Russia
  2904.  
  2905.      26 Jan 1997
  2906.         Australia Day, Australia.
  2907.  
  2908.       6 Feb 1997
  2909.         Waitangi Day, New Zealand.
  2910.  
  2911.      16 Feb 1997
  2912.         Eleventh Anniversary of invention of Echomail by Jeff Rush.
  2913.  
  2914.      29 Feb 1997
  2915.         Nothing will happen on this day.
  2916.  
  2917.      25 May 1997
  2918.         Independence Day, Argentina
  2919.  
  2920.      11 Jun 1997
  2921.         Independence Day, Russia
  2922.  
  2923.       1 Dec 1998
  2924.         Fifteenth Anniversary of release of Fido version 1 by
  2925.         Tom Jennings.
  2926.  
  2927.      31 Dec 1999
  2928.         Hogmanay, Scotland. The New Year that can't be missed.
  2929.  
  2930.      15 Sep 2000
  2931.         Sydney (Australia) Summer Olympiad opens.
  2932.  
  2933.      -- If YOU have something which you would like to see in this
  2934.         Future History, please send a note to the FidoNews Editor.
  2935.  
  2936.      -----------------------------------------------------------------
  2937.  
  2938.      FIDONEWS 13-45               Page 52                   4 Nov 1996
  2939.  
  2940.  
  2941.      =================================================================
  2942.                          FIDONET SOFTWARE LISTING
  2943.      =================================================================
  2944.  
  2945.  
  2946.      Latest Greatest Software Versions
  2947.      by Peter E. Popovich, 1:363/264
  2948.  
  2949.      Still catching up from last week's crash. I should be up-to-date by
  2950.      next week's issue.
  2951.  
  2952.      Phased out this week: QNX Software
  2953.  
  2954.      Phase-out highlights:
  2955.        This week: Kitten 1.01 Software Deadline for info: 15 Nov 1996.
  2956.        Last week: Atari ST/TT Software Deadline for info: 8 Nov 1996.
  2957.  
  2958.      -=- Snip -=-
  2959.  
  2960.      Submission form for the Latest Greatest Software Versions column
  2961.  
  2962.      OS Platform                             :
  2963.      Software package name                   :
  2964.      Version                                 :
  2965.      Function(s) - BBS, Mailer, Tosser, etc. :
  2966.      Freeware / Shareware / Commercial?      :
  2967.      Author / Support staff contact name     :
  2968.      Author / Support staff contact node     :
  2969.      Magic name (at the above-listed node)   :
  2970.  
  2971.      Please include a sentence describing what the package does.
  2972.  
  2973.      Please send updates and suggestions to: Peter Popovich, 1:363/264
  2974.  
  2975.      -=- Snip -=-
  2976.  
  2977.      MS-DOS:
  2978.      Program Name   Version    F C Contact Name      Node        Magic Name
  2979.      ----------------------------------------------------------------------
  2980.      Act-Up         4.6        G D Chris Gunn        1:15/55     ACT-UP
  2981.      ALLFIX         4.33       T S Harald Harms      2:281/415   ALLFIX
  2982.      Announcer      1.1        O S Peter Karlsson    2:206/221   ANNOUNCE
  2983.      BGFAX          1.60       O S B.J. Guillot      1:106/400   BGFAX
  2984.      CheckPnt       0.5 beta   O F Michiel van der Vlist
  2985.                                                      2:500/9     CHECKPNT
  2986.      FidoBBS (tm)   12u        B S Ray Brown         1:1/117     FILES
  2987.      FrontDoor      2.12       M S JoHo              2:201/330   FD
  2988.      FrontDoor      2.20c      M C JoHo              2:201/330   FDINFO
  2989.      GIGO           07-14-96   G S Jason Fesler      1:1/141     INFO
  2990.      Imail          1.75       T S Michael McCabe    1:297/11    IMAIL
  2991.      ImCrypt        1.04       O F Michiel van der Vlist
  2992.                                                      2:500/9     IMCRYPT
  2993.      InfoMail       1.11       O F Damian Walker     2:2502/666  INFOMAIL
  2994.      InterEcho      1.19       T C Peter Stewart     1:369/35    IEDEMO
  2995.      InterMail      2.29k      M C Peter Stewart     1:369/35    IMDEMO
  2996.      InterPCB       1.52       O S Peter Stewart     1:369/35    INTERPCB
  2997.      FIDONEWS 13-45               Page 53                   4 Nov 1996
  2998.  
  2999.  
  3000.      IPNet          1.11       O S Michele Stewart   1:369/21    IPNET
  3001.      Jelly-Bean     1.01       T S Rowan Crowe       3:635/727   JELLY
  3002.      Jelly-Bean/386 1.01       T S Rowan Crowe       3:635/727   JELLY386
  3003.      MakePl         1.8        N F Michiel van der Vlist
  3004.                                                      2:500/9     MAKEPL
  3005.      Marena         1.1 beta   O F Michiel van der Vlist
  3006.                                                      2:500/9     MARENA
  3007.      Maximus        3.01       B P Tech              1:249/106   MAX
  3008.      McMail         1.0g5      M S Michael McCabe    1:1/148     MCMAIL
  3009.      MDNDP          1.18       N S Bill Doyle        1:388/7     MDNDP
  3010.      MsgEd          4.00       O G Paul Edwards      3:711/934   MSGED
  3011.      Opus CBCS      1.73a      B P Christopher Baker 1:374/14    OPUS
  3012.      O/T-Track      2.63a      O S Peter Hampf       2:241/1090  OT
  3013.      PcMerge        2.7        N F Michiel van der Vlist
  3014.                                                      2:500/9     PCMERGE
  3015.      PlatinumXpress 1.1        M C Gary Petersen     1:290/111   PX11TD.ZIP
  3016.      RAR            2.00       C S Ron Dwight        2:220/22    RAR
  3017.      RemoteAccess   2.50       B S Mark Lewis        1:3634/12   RA
  3018.      Silver Xpress
  3019.        Door         5.4        O S Gary Petersen     1:290/111   FILES
  3020.        Reader       4.3        O S Gary Petersen     1:290/111   SXR43.ZIP
  3021.      Squish         1.11       T P Tech              1:249/106   SQUISH
  3022.      StealTag UK    1.c...     O F Fred Schenk       2:284/412   STEAL_UK
  3023.      StealTag NL    1.c...     O F Fred Schenk       2:284/412   STEAL_NL
  3024.      T-Mail         2.599I     M S Ron Dwight        2:220/22    TMAIL
  3025.      Terminate      4.00       O S Bo Bendtsen       2:254/261   TERMINATE
  3026.      Tobruk         0.33       T G Paul Edwards      3:711/934   TOBRUK
  3027.      TriBBS         10.0       B S Patrick Driscoll  1:372/19    TRIBBS
  3028.      TriDog         10.0       M S Patrick Driscoll  1:372/19    TRIDOG
  3029.      TriToss        10.0       T S Patrick Driscoll  1:372/19    TRITOSS
  3030.      WWIV           4.24a      B S Craig Dooley      1:376/126   WWIV
  3031.      XRobot         3.01       O S JoHo              2:201/330   XRDOS
  3032.  
  3033.      OS/2:
  3034.      Program Name   Version    F C Contact Name      Node        Magic Name
  3035.      ----------------------------------------------------------------------
  3036.      BGFAX          1.60       O S B.J. Guillot      1:106/400   BGFAX
  3037.      FleetStreet    1.18       O S Michael Hohner    2:2490/2520 FLEET
  3038.      GIGO           07-14-96   G S Jason Fesler      1:1/141     INFO
  3039.      ImCrypt        1.04       O F Michiel van der Vlist
  3040.                                                      2:500/9     IMCRYPT
  3041.      Maximus        3.01       B P Tech              1:249/106   MAXP
  3042.      MsgEd          4.00       O G Paul Edwards      3:711/934   MSGED
  3043.      PcMerge        2.3        N F Michiel van der Vlist
  3044.                                                      2:500/9     PCMERGE
  3045.      RAR            2.00       C S Ron Dwight        2:220/22    RAR2
  3046.      Squish         1.11       T P Tech              1:249/106   SQUISHP
  3047.      T-Mail         2.599I     M S Ron Dwight        2:220/22    TMAIL2
  3048.      Tobruk         0.33       T G Paul Edwards      3:711/934   TOBRUK
  3049.      XRobot         3.01       O S JoHo              2:201/330   XROS2
  3050.  
  3051.      Windows (16-bit apps):
  3052.      Program Name   Version    F C Contact Name      Node        Magic Name
  3053.      ----------------------------------------------------------------------
  3054.      BeeMail        1.0        M C Andrius Cepaitis  2:470/1     BEEMAIL
  3055.  
  3056.      FIDONEWS 13-45               Page 54                   4 Nov 1996
  3057.  
  3058.  
  3059.      Windows (32-bit apps):
  3060.      Program Name   Version    F C Contact Name      Node        Magic Name
  3061.      ----------------------------------------------------------------------
  3062.      BeeMail        1.0        M C Andrius Cepaitis  2:470/1     BEEMAIL
  3063.      Maximus        3.01       B P Tech              1:249/106   MAXN
  3064.      PlatinumXpress 2.00       M C Gary Petersen     1:290/111   PXW-INFO
  3065.      T-Mail         2.599I     M S Ron Dwight        2:220/22    TMAILNT
  3066.  
  3067.      Unix:
  3068.      Program Name   Version    F C Contact Name      Node        Magic Name
  3069.      ----------------------------------------------------------------------
  3070.      ifmail         2.8f       M G Eugene Crosser    2:293/2219  IFMAIL
  3071.      ifmail-tx      2.8f-tx7.7 M G Pablo Saratxaga   2:293/2219  IFMAILTX
  3072.      MsgEd          4.00       O G Paul Edwards      3:711/934   MSGED
  3073.      Tobruk         0.33       T G Paul Edwards      3:711/934   TOBRUK
  3074.  
  3075.      Amiga:
  3076.      Program Name   Version    F C Contact Name      Node        Magic Name
  3077.      ----------------------------------------------------------------------
  3078.      CrashMail      1.23       T X Fredrik Bennison  2:205/324   CRASHMAIL
  3079.      CrashTick      1.1        O F Fredrik Bennison  2:205/324   CRASHTICK
  3080.      MsgEd          4.00       O G Paul Edwards      3:711/934   MSGED
  3081.      Tobruk         0.33       T G Paul Edwards      3:711/934   TOBRUK
  3082.  
  3083.      Function: B-BBS, M-Mailer, N-Nodelist, G-Gateway, T-Tosser,
  3084.                C-Compression, O-Other. Note: Multifunction will be listed
  3085.                by the first match.
  3086.  
  3087.      Cost: P-Free for personal use, F-Freeware, S-Shareware, C-Commercial,
  3088.            X-Crippleware, D-Demoware, G-Free w/ Source
  3089.  
  3090.  
  3091.      Old info from: 01/27/92
  3092.      ---------------------------------------------------------------------
  3093.  
  3094.                              MS-DOS Systems
  3095.                              --------------
  3096.  
  3097.      BBS Software            NodeList Utilities      Other Utilities
  3098.      Name         Version    Name         Version    Name         Version
  3099.      --------------------    --------------------    --------------------
  3100.      Kitten          1.01    EditNL          4.00    MailBase       4.11a@
  3101.      Lynx            1.30    FDND            1.10    MSG              4.5*
  3102.      Merlin         1.39n    MakeNL          2.31    MsgLnk          1.0c
  3103.      Oracomm       5.M.6P@   Parselst        1.33    MsgMstr        2.03a
  3104.      Oracomm Plus     6.E@   Prune           1.40    MsgNum         4.16d
  3105.      PCBoard        14.5a    SysNL           3.14    MSGTOSS          1.3
  3106.      Phoenix         1.07*   XlatList        2.90    Netsex         2.00b
  3107.      ProBoard        1.20*   XlaxNode/Diff   2.53    OFFLINE         1.35
  3108.      QuickBBS        2.75                            Oliver          1.0a
  3109.      RBBS           17.3b    Other Utilities         OSIRIS CBIS     3.02
  3110.      RemoteAccess    1.11*   Name         Version    PKInsert        7.10
  3111.      SimplexBBS      1.05    --------------------    PolyXarc        2.1a
  3112.      SLBBS          2.15C*   2DAPoint        1.50*   QM             1.00a
  3113.      Socrates        1.11    4Dog/4DMatrix   1.18    QSort           4.04
  3114.      SuperBBS        1.12*   ARCAsim         2.31    RAD Plus        2.11
  3115.      FIDONEWS 13-45               Page 55                   4 Nov 1996
  3116.  
  3117.  
  3118.      SuperComm       0.99    ARCmail         3.00*   Raid            1.00
  3119.      TAG             2.5g    Areafix         1.20    RBBSMail        18.0
  3120.      TBBS             2.1    ConfMail        4.00    ScanToss        1.28
  3121.      TComm/TCommNet   3.4    Crossnet         1.5    ScMail          1.00
  3122.      Telegard         2.7*   DOMAIN          1.42    ScEdit          1.12
  3123.      TPBoard          6.1    DEMM            1.06    Sirius          1.0x
  3124.      WildCat!        3.02*   DGMM            1.06    SLMail         2.15C
  3125.      XBBS            1.77    DOMAIN          1.42    StarLink        1.01
  3126.                              EEngine         0.32    TagMail         2.41
  3127.      Network Mailers         EMM             2.11*   TCOMMail         2.2
  3128.      Name         Version    EZPoint          2.1    Telemail         1.5*
  3129.      --------------------    FGroup          1.00    TGroup          1.13
  3130.      BinkleyTerm     2.50    FidoPCB         1.0s@   TIRES           3.11
  3131.      D'Bridge        1.30    FNPGate         2.70    TMail           1.21
  3132.      Dreamer         1.06    GateWorks      3.06e    TosScan         1.00
  3133.      Dutchie        2.90c    GMail           2.05    UFGATE          1.03
  3134.      Milqtoast       1.00    GMD             3.10    VPurge         4.09e
  3135.      PreNM           1.48    GMM             1.21    WEdit            2.0@
  3136.      SEAdog          4.60    GoldEd         2.31p    WildMail        2.00
  3137.      SEAmail         1.01    GROUP           2.23    WMail            2.2
  3138.      TIMS       1.0(mod8)    GUS             1.40    WNode            2.1
  3139.                              Harvey's Robot  4.10    XRS             4.99
  3140.      Compression             HeadEdit        1.18    XST             2.3e
  3141.      Utilities               HLIST           1.09    YUPPIE!         2.00
  3142.      Name         Version    ISIS            5.12@   ZmailH          1.25
  3143.      --------------------    Lola           1.01d    ZSX             2.40
  3144.      ARC             7.12    Mosaic         1.00b
  3145.      ARJ             2.20
  3146.      LHA             2.13
  3147.      PAK             2.51
  3148.      PKPak           3.61
  3149.      PKZip           1.10
  3150.  
  3151.  
  3152.                              OS/2 Systems
  3153.                              ------------
  3154.  
  3155.      BBS Software            Other Utilities(A-M     Other Utilities(N-Z)
  3156.      Name         Version    Name         Version    Name         Version
  3157.      --------------------    --------------------    --------------------
  3158.      Kitten          1.01    ARC             7.12    oMMM            1.52
  3159.      SimplexBBS   1.04.02+   ARC2            6.01    Omail            3.1
  3160.                              ConfMail        4.00    Parselst        1.33
  3161.                              EchoStat         6.0    PKZip           1.02
  3162.      Network Mailers         EZPoint          2.1    PMSnoop         1.30
  3163.      Name         Version    FGroup          1.00    PolyXOS2        2.1a
  3164.      --------------------    GROUP           2.23    QSort            2.1
  3165.      BinkleyTerm     2.50    LH2             2.11    Raid             1.0
  3166.      BinkleyTerm(S)  2.50    MSG              4.2    Remapper         1.2
  3167.      BinkleyTerm/2-MT        MsgLink         1.0c    Tick             2.0
  3168.                   1.40.02    MsgNum         4.16d    VPurge         4.09e
  3169.      SEAmail         1.01
  3170.  
  3171.  
  3172.                              Xenix/Unix 386
  3173.                              --------------
  3174.      FIDONEWS 13-45               Page 56                   4 Nov 1996
  3175.  
  3176.  
  3177.      BBS Software            Network Mailers         Other Utilities
  3178.      Name         Version    Name         Version    Name         Version
  3179.      --------------------    --------------------    --------------------
  3180.                                                      ARC             5.21
  3181.                                                      C-LHARC         1.00
  3182.       |Contact:  Willy Paine 1:343/15,|              MSGLINK         1.01
  3183.       |or Eddy van Loo 2:285/406      |              oMMM            1.42
  3184.                                                      Omail           1.00
  3185.                                                      ParseLst        1.32
  3186.                                                      Unzip           3.10
  3187.                                                      VPurge          4.08
  3188.                                                      Zoo             2.01
  3189.  
  3190.  
  3191.                              Macintosh
  3192.                              ---------
  3193.  
  3194.      BBS Software            Network Mailers         Other Software
  3195.      Name         Version    Name         Version    Name         Version
  3196.      --------------------    --------------------    --------------------
  3197.      FBBS            0.91    Copernicus       1.0    ArcMac           1.3
  3198.      Hermes         1.6.1    Tabby            2.2    AreaFix          1.6
  3199.      Mansion         7.15                            Compact Pro     1.30
  3200.      Precision Sys. 0.95b                            EventMeister     1.0
  3201.      Red Ryder Host   2.1                            Export          3.21
  3202.      Telefinder Host                                 Import           3.2
  3203.                   2.12T10                            LHARC           0.41
  3204.                                                      MacArd          0.04
  3205.                                                      Mantissa        3.21
  3206.      Point System                                    Mehitable        2.0
  3207.      Software                                        OriginatorII     2.0
  3208.      Name         Version                            PreStamp         3.2
  3209.      --------------------                            StuffIt Classic  1.6
  3210.      Copernicus      1.00                            SunDial          3.2
  3211.      CounterPoint    1.09                            TExport         1.92
  3212.      MacWoof          1.1                            TimeStamp        1.6
  3213.                                                      TImport         1.92
  3214.                                                      Tset             1.3
  3215.                                                      TSort            1.0
  3216.                                                      UNZIP          1.02c
  3217.                                                      Zenith           1.5
  3218.                                                      Zip Extract     0.10
  3219.  
  3220.  
  3221.                              Amiga
  3222.                              -----
  3223.  
  3224.      BBS Software            Network Mailers         Other Software
  3225.      Name         Version    Name         Version    Name         Version
  3226.      --------------------    --------------------    --------------------
  3227.      4D-BBS          1.65    BinkleyTerm     1.00    Areafix         1.48
  3228.      DLG Pro.       0.96b    TrapDoor        1.80    AReceipt         1.5
  3229.      Falcon CBCS     1.00    WelMat          0.44    ChameleonEdit   0.11
  3230.      Starnet         1.0q@                           ConfMail        1.12
  3231.      TransAmiga      1.07                            ElectricHerald  1.66
  3232.      XenoLink         1.0    Compression             FFRS             1.0@
  3233.      FIDONEWS 13-45               Page 57                   4 Nov 1996
  3234.  
  3235.  
  3236.                              Utilities               FileMgr         2.08
  3237.                              Name         Version    Fozzle           1.0@
  3238.      NodeList Utilities      --------------------    Login           0.18
  3239.      Name         Version    AmigArc         0.23    MessageFilter   1.52
  3240.      --------------------    booz            1.01    Message View    1.12
  3241.      ParseLst        1.66    LHARC           1.30    oMMM            1.50
  3242.      Skyparse        2.30    LhA             1.10    PolyXAmy        2.02
  3243.      TrapList        1.40    LZ              1.92    RMB             1.30
  3244.                              PkAX            1.00    Roof           46.15
  3245.                              UnZip            4.1    RoboWriter      1.02
  3246.                              Zippy (Unzip)   1.25    Rsh            4.07a
  3247.                              Zoo             2.01    Tick            0.75
  3248.                                                      TrapToss        1.20
  3249.      |Contact: Maximilian Hantsch 2:310/6|           Yuck!           2.02
  3250.  
  3251.  
  3252.                              Atari ST/TT
  3253.                              -----------
  3254.  
  3255.      BBS Software            Network Mailers         Other Utilities
  3256.      Name         Version    Name         Version    Name         Version
  3257.      --------------------    --------------------    --------------------
  3258.      FIDOdoor/ST    2.5.1    BinkleyTerm   2.40n9    ApplyList       1.00@
  3259.      FiFo            2.1v    The Box         1.95*   Burep            1.1
  3260.      LED ST          1.00                            ComScan         1.04
  3261.      QuickBBS/ST     1.06*                           ConfMail        4.10
  3262.                              NodeList  Utilities     Echoscan        1.10
  3263.                              Name         Version    FDrenum        2.5.2
  3264.      Compression             --------------------    FastPack        1.20
  3265.      Utilities               ParseList       1.30    Import          1.14
  3266.      Name         Version    EchoFix         1.20    oMMM            1.40
  3267.      --------------------    sTICK/Hatch     5.50    Pack            1.00
  3268.      ARC             6.02                            Trenum          0.10
  3269.      LHARC          2.01i
  3270.      PackConvert
  3271.      STZip            1.1*
  3272.      UnJARST         2.00
  3273.      WhatArc         2.02
  3274.  
  3275.  
  3276.                              Tandy Color Computer 3 (OS-9 Level II)
  3277.                              --------------------------------------
  3278.  
  3279.      BBS Software            Compression Utility     Other Utilities
  3280.      Name         Version    Name         Version    Name         Version
  3281.      --------------------    --------------------    --------------------
  3282.      RiBBS           2.02+   Ar               1.3    Ascan            1.2
  3283.                              DeArc           5.12    AutoFRL          2.0
  3284.                              OS9Arc           1.0    Bundle           2.2
  3285.                              UnZip           3.10    CKARC            1.1
  3286.                              UnLZH            3.0    EchoCheck       1.01
  3287.                                                      FReq            2.5a
  3288.                                                      LookNode        2.00
  3289.                                                      ParseLST
  3290.                                                      PReq             2.2
  3291.                                                      RList           1.03
  3292.      FIDONEWS 13-45               Page 58                   4 Nov 1996
  3293.  
  3294.  
  3295.                                                      RTick           2.00
  3296.                                                      UnBundle         1.4
  3297.                                                      UnSeen           1.1
  3298.  
  3299.      --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --
  3300.      Key to old info:
  3301.            + - Netmail Capable (Doesn't Require Additional Mailer Software)
  3302.            * - Recently Updated Version
  3303.            @ - New Addition
  3304.      --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --
  3305.  
  3306.      Please send updates and suggestions to: Peter Popovich, 1:363/264
  3307.  
  3308.      -----------------------------------------------------------------
  3309.  
  3310.      FIDONEWS 13-45               Page 59                   4 Nov 1996
  3311.  
  3312.  
  3313.      =================================================================
  3314.                             FIDONEWS PUBLIC-KEY
  3315.      =================================================================
  3316.  
  3317.  
  3318.      [this must be copied out to a file starting at column 1 or
  3319.       it won't process under PGP as a valid public-key]
  3320.  
  3321.  
  3322.      -----BEGIN PGP PUBLIC KEY BLOCK-----
  3323.      Version: 2.6.2
  3324.      Comment: Clear-signing is Electronic Digital Authenticity!
  3325.  
  3326.      -----END PGP PUBLIC KEY BLOCK-----
  3327.  
  3328.  
  3329.      Pending a formal decision about including 'encrypted' material inside
  3330.      FidoNews from the Zone Coordinator Council, the guts of the FidoNews
  3331.      public-key have been removed from this listing.
  3332.  
  3333.      File-request FNEWSKEY from 1:1/23 [1:18/14] or download it from the
  3334.      Rights On! BBS at 1-904-409-7040 anytime except 0100-0130 ET and Zone
  3335.      1 ZMH at 1200-9600+ HST/V32B.
  3336.  
  3337.      This section will contain only this disclaimer and instructions until
  3338.      a ZCC decision is forwarded to the Editor.
  3339.  
  3340.      Sorry for any inconvenience.
  3341.  
  3342.      -----------------------------------------------------------------
  3343.  
  3344.      FIDONEWS 13-45               Page 60                   4 Nov 1996
  3345.  
  3346.  
  3347.      =================================================================
  3348.                            FIDONEWS INFORMATION
  3349.      =================================================================
  3350.  
  3351.      ------- FIDONEWS MASTHEAD AND CONTACT INFORMATION -------
  3352.  
  3353.      Editor: Christopher Baker
  3354.  
  3355.      Editors Emeritii: Thom Henderson, Dale Lovell,
  3356.                        Vince Perriello, Tim Pozar,
  3357.                        Tom Jennings, Sylvia Maxwell,
  3358.                        Donald Tees
  3359.  
  3360.      "FidoNews Editor"
  3361.          FidoNet  1:1/23
  3362.          BBS  1-904-409-7040,  300/1200/2400/14400/V.32bis/HST(ds)
  3363.  
  3364.       more addresses:
  3365.          Christopher Baker -- 1:18/14, cbaker84@digital.net
  3366.                                        cbak.rights@opus.global.org
  3367.  
  3368.      (Postal Service mailing address)
  3369.          FidoNews Editor
  3370.          P.O. Box 471
  3371.          Edgewater, FL 32132-0471
  3372.          U.S.A.
  3373.  
  3374.  
  3375.      voice:  1-904-409-3040 [1400-2100 ET only, please]
  3376.                             [1800-0100 UTC/GMT]
  3377.  
  3378.      ------------------------------------------------------
  3379.  
  3380.      FidoNews is published weekly by and for the members of the FIDONET
  3381.      INTERNATIONAL AMATEUR ELECTRONIC MAIL system.  It is a compilation
  3382.      of individual articles contributed by their authors or their
  3383.      authorized agents.  The contribution of articles to this compilation
  3384.      does not diminish the rights of the authors.  OPINIONS EXPRESSED in
  3385.      these articles ARE THOSE OF THE AUTHORS and not necessarily those of
  3386.      FidoNews.
  3387.  
  3388.      Authors retain copyright on individual works; otherwise FidoNews is
  3389.      Copyright 1996 Christopher Baker.  All rights reserved.  Duplication
  3390.      and/or distribution permitted for noncommercial purposes only.  For
  3391.      use in other circumstances, please contact the original authors, or
  3392.      the Editor.
  3393.  
  3394.                             =*=*=*=*=*=*=*=*=
  3395.  
  3396.      OBTAINING COPIES: The most recent issue of FidoNews in electronic
  3397.      form may be obtained from the FidoNews Editor via manual download or
  3398.      file-request, or from various sites in the FidoNet and Internet.
  3399.      PRINTED COPIES may be obtained by sending SASE to the above postal
  3400.      address.  File-request FIDONEWS for the current Issue.  File-request
  3401.      FNEWS for the current month in one archive.  Or file-request specific
  3402.      back Issue filenames in distribution format [FNEWSDnn.LZH] for a
  3403.      FIDONEWS 13-45               Page 61                   4 Nov 1996
  3404.  
  3405.  
  3406.      particular Issue.  Monthly Volumes are available as FNWSmmmy.ZIP
  3407.      where mmm = three letter month [JAN - DEC] and y = last digit of the
  3408.      current year [6], i.e., FNWSMAY6.ZIP for all the Issues from May 96.
  3409.  
  3410.      Annual volumes are available as FNEWSn.ZIP where n = the Volume number
  3411.      1 - 12 for 1984 - 1995, respectively. Annual Volume archives range in
  3412.      size from 48K to 1.2M.
  3413.  
  3414.  
  3415.      INTERNET USERS: FidoNews is available via:
  3416.  
  3417.                           http://www.fidonet.org/fidonews.htm
  3418.                           ftp://ftp.fidonet.org/pub/fidonet/fidonews/
  3419.                           ftp://ftp.aminet.org/pub/aminet/comm/fido/
  3420.  
  3421.      You can read the current FidoNews Issue in HTML format at:
  3422.  
  3423.                           http://www.geocities.com/athens/6894/
  3424.  
  3425.      STAR SOURCE for ALL Past Issues via FTP and file-request -
  3426.      Available for FReq from 1:396/1 or by anonymous FTP from:
  3427.  
  3428.                           ftp://ftp.sstar.com/fidonet/fnews/
  3429.  
  3430.      Each yearly archive also contains a listing of the Table-of-Contents
  3431.      for that year's issues.  The total set is currently about 11 Megs.
  3432.  
  3433.                                  =*=*=*=
  3434.  
  3435.      The current week's FidoNews and the FidoNews public-key are now also
  3436.      available almost immediately after publication on the Editor's new
  3437.      homepage on the World Wide Web at:
  3438.  
  3439.                   http://ddi.digital.net/~cbaker84/fidonews.html
  3440.  
  3441.      There are also links there to jim barchuk's HTML FidoNews source and
  3442.      to John Souvestre's FTP site for the archives. There is also an email
  3443.      link for sending in an article as message text. Drop on over.
  3444.  
  3445.                             =*=*=*=*=*=*=*=*=
  3446.  
  3447.      A PGP generated public-key is available for the FidoNews Editor from
  3448.      1:1/23 [1:18/14] by file-request for FNEWSKEY or by download from
  3449.      Rights On! BBS at 1-904-409-7040 as FIDONEWS.ASC in File Area 18.  It
  3450.      is also posted twice a month into the PKEY_DROP Echo available on the
  3451.      Zone 1 Echomail Backbone.
  3452.  
  3453.                                 *=*=*=*=*
  3454.  
  3455.      Anyone interested in getting a copy of the INTERNET GATEWAY FAQ may
  3456.      file-request GISFAQ.ZIP from 1:133/411.0, or send an internet message
  3457.      to fidofaq@gisatl.fidonet.org.  No message or text or subject is
  3458.      necessary.  The address is a keyword that will trigger the automated
  3459.      response.  People wishing to send inquiries directly to David Deitch
  3460.      should now mail to fidonet@gisatl.fidonet.org rather than the
  3461.      previously listed address.
  3462.      FIDONEWS 13-45               Page 62                   4 Nov 1996
  3463.  
  3464.  
  3465.                                 *=*=*=*=*
  3466.  
  3467.      SUBMISSIONS: You are encouraged to submit articles for publication in
  3468.      FidoNews. Article submission requirements are contained in the file
  3469.      ARTSPEC.DOC, available from the FidoNews Editor, or file-requestable
  3470.      from 1:1/23 [1:18/14] as file "ARTSPEC.DOC".  ALL Zone Coordinators
  3471.      also have copies of ARTSPEC.DOC. Please read it.
  3472.  
  3473.      "Fido", "FidoNet" and the dog-with-diskette are U.S. registered
  3474.      trademarks of Tom Jennings, P.O. Box 410923, San Francisco, CA 94141,
  3475.      and are used with permission.
  3476.  
  3477.              "Disagreement is actually necessary,
  3478.               or we'd all have to get in fights
  3479.               or something to amuse ourselves
  3480.               and create the requisite chaos."
  3481.                                 -Tom Jennings
  3482.  
  3483.       -30-
  3484.  
  3485.  
  3486.      -----------------------------------------------------------------
  3487.  
  3488.